2017-03-08 5 views
0

私は長い時間がかかりません。 (これは、常にサーバー側で待機しているfaye pub-subクライアントです)。アプリケーションがサーバーにデプロイされたときにジョブが作成されて動作しますが、ここでの問題が発生します。古いジョブは新しいビルドごとに削除されないため、2回目に展開します。私はworkerを介して見つけることによってキュー内のすべてのジョブを停止できるsidekiq apiを通過しましたが、同じサーバー上で実行されている他のアプリケーションがあり、すべてのビジーなジョブを削除すると、ここでsidekiqの前のビルドのジョブを削除します

私の労働者 アプリ/労働/ subscriber.rb

require 'rake' 
    Rake::Task.clear 
    Faye::Application.load_tasks 
    class Subscriber 
     include Sidekiq::Worker 
     def perform 
     Rake::Task['faye:subscriber'].invoke" 
     end 
end 

はここに私の初期化子/ sidekiq.rb

Sidekiq.configure_server do |config| 
    config.redis = { url: 'redis://localhost:6379' } 
end 

Sidekiq.configure_client do |config| 
    config.redis = { url: 'redis://localhost:6379' } 
    Rails.application.config.after_initialize do 
     Subscriber.perform_async 
    end 
end 

がありますされています任意のソリューションですか?または私は間違った方向に行くのですか?どんな助けでも大歓迎です。ありがとうございます:)

答えて

0

あなたは間違った方向に行きます。 Sidekiqは、永遠にまたは常に実行されるジョブ用に設計されていません。レーキタスクから適切なサービスを作成します。

+0

返事ありがとう、私は何時までジョブを永遠に実行するために使用することができますか? –

関連する問題