sql >> データベース >  >> NoSQL >> Redis

起動時にresqueワーカーを自動的に作成するにはどうすればよいですか?

    私は神の宝石を使用しません。なぜなら、(1)導入されたセットアップの複雑さに非常に打ちのめされたプロジェクトを見たことがあり、(2)処理する標準のLinux(Ubuntu)ツールに個人的に非常に満足しているからです。このようなこと。

    起動時にResqueワーカーを開始するには

    このコードは/etc/rc.localにあります ファイル。 デプロイがあります システム上のユーザー:

    # Start Resque
    su -l deploy -c "/home/deploy/start-resque-workers"
    su -l deploy -c "/home/deploy/start-resque-webui"
    

    次に、これらのスクリプトでruby環境をセットアップし、rakeタスクを実行します。

    # Load RVM into a shell session *as a function*
    if [[ -s "$HOME/.rvm/scripts/rvm" ]] ; then
      # First try to load from a user install
      source "$HOME/.rvm/scripts/rvm"
    elif [[ -s "/usr/local/rvm/scripts/rvm" ]] ; then
      # Then try to load from a root install
      source "/usr/local/rvm/scripts/rvm"
    else
      printf "ERROR: An RVM installation was not found.\n"
    fi
    
    # Use rvm to switch to the default ruby. 
    rvm use default
    
    # Now launch the app
    cd /home/deploy/app-name-here/current
    nohup rake QUEUE=* RAILS_ENV=production environment resque:work &
    

    私はこの種のセットアップを何年も使用してきました、そしてそれはしっかりしています。サーバーはクラッシュしません。これらの他のサーバーを監視するために、別のシステム(神の宝石など)をインストールするオーバーヘッドはまだ必要ありません。

    さらに、capistrano gemを使用して、デプロイ時にワーカーを再起動します。



    1. Mongoskinで順序付けされていない一括挿入を使用するにはどうすればよいですか?

    2. MongoDBレプリケーションに「アービター」が必要なのはなぜですか?

    3. スレーブからマスターにredisデータを復元する

    4. MongoDB $literal