0

私はpingdomに似た監視サービスを構築していますが、システムのさまざまな側面を監視し、sidekiqを使用してうまく機能しているタスクをキューに入れています。私がしなければならないことは、毎分 ping を送信するスケジュールを設定することです。cronベースのシステムを使用するのではなく、毎分新しい ruby​​ インスタンスをスピンアップする必要があります。 ") sidekiq 独自のキューを使用して将来のタスクをスケジュールします。これは素晴らしい解決策のように思えますが、タスクをスケジュールする最も信頼できる方法ではないのではないかと心配しています。システムに問題がある場合 (ある時点で必然的に発生するため)、タスクをスケジュールするこの方法は、cron ベースの方法を使用するよりも信頼性が低くなりますか? また、その理由は?

ありがとう

4

1 に答える 1

-1

システムのニーズについての説明が短すぎますが、それがどのようになるかを推測してみます。

そもそも sidekiq を使用するということは、redis のインスタンスも必要になることを意味します。また、sidekiq プロセスを監視し、障害が発生した場合に再起動する方法と、場合によっては redis サーバーが必要になることも意味します。

cron タスクに基づく方法は要件が少ないため、失敗する可能性がはるかに低くなります。

cron は長い間存在しており、戦闘でテストされており、非常に信頼性が高いですが、欠点もあります。

マスター/スレーブ構成でredisの個別のインスタンスを使用してシステムを構築でき、Redisセンチネルを使用してマスターに障害が発生した場合のフェイルオーバーを実装し、このセットアップで監視/アラートシステムを実装することもできます(使用できます)このhttp://contribsys.com/inspeqtor/のような非常に単純なもの(sidekiq の作成者によるもの) で、別のマシンで sidekiq の複数のインスタンスを起動することもできます。

これで、sidetiq で sidekiq を実行するための非常に信頼性の高いシステムを構築できます。

それが役に立てば幸い

于 2015-03-04T20:44:01.547 に答える