私たちのuber-serviceは、別々のマシンで動作する複数のサービスで構成されています。サービスが健全で確実に到達できるように、他のマシンは定期的にサービスに「ping」リクエストを送信します。 pingのタイムアウトを決定するのは難しいですが、私たちはあまりにも長く(フェイル・ファースト・アプローチ)待ってはいけませんが、あまりにも速く失敗したくないのです(負荷が高いときに、サーバーとタイムアウトが発生し、カスケードを引き起こすフェールオーバーにつながる可能性があります)。また、pingがネットワークを詰まらせる可能性があることも確認しました。 マシンの状態が不健全/到達不能になっていることを識別するのに優れている、pingの代替(TCP接続を開いている可能性があります)があるのでしょうか?健全なマシンを判断するためのpingの代わり
1
A
答えて
1
ゴシッププロトコルは、健康トラフィックを大幅に減らすことができ、かなり早く収束します。
ゴシップの上に健康システムを構築できますか?
代わりに、サービスホストがハートビートを中央サービスに送信でき、そのサービスがシステム正常性の基準になる可能性があります。飼い葉桶の一時的な記入項目は、請求書、または同様のシステムに適合し得る。
関連する問題
- 1. ピクセル完全性を判断するためのPDFファイルの視覚的差分
- 2. ping win2k16は、IPv4の代わりにIPv6アドレスを返します。
- 3. Ravenscarプログラムのスタック使用量を判断するためのベストプラクティス
- 4. ユーザー設定を判断するためのAndroid APIコール "Data Enabled"
- 5. Java:等価性を判断するための外部クラス?
- 6. 代わりに、完全なエラーメッセージ
- 7. アーキテクチャが32ビットか64ビットかを判断するためのエレガントで安全な方法
- 8. pythonのreadlineがファイルの終わりを間違って判断しました
- 9. iOS上でテキストフィールドの完全入力を判断する方法
- 10. シンプルなフレキシブルな幅ディスプレイの代わり:IEのためのボックス?
- 11. スキャナで行の終わりを判断するのに助けが必要
- 12. VB.netでマシンのリストをpingする
- 13. BeautifulSoupを使ったパスの代わりに完全なURLを取得する
- 14. EC2不健全なインスタンス
- 15. kubernetes不健全なイングレスバックエンド
- 16. フレームの代わりにWKWebView全画面?
- 17. XML DOMノードツリーで要素の終わりを判断するには
- 18. 健全性チェック
- 19. 代わりに特定のコンテナのマシンをホストへのルート
- 20. Ruby - オブジェクトがリストに含まれているかどうかを判断するための代替スタイル?
- 21. データフォームmysqlをプルするためのWebサービスの代わりに?
- 22. Rでの完全な配列を読み、代わりのメンバー
- 23. POSTが成功するかどうかを判断するためのRESTfulな方法はありますか?
- 24. Javaバイトコード命令の長さを判断するための巧妙な方法はありますか?
- 25. ワークシートの代わりにブック全体のマクロを作成する
- 26. 待機のためにThread.Sleepを使用する代わりに
- 27. WebデータをダウンロードするためにSeleniumスクリプトの代わりに
- 28. 複雑さのレベルを判断するためにSQLを解析する
- 29. あなたのマシン上のSphinxを検出できないため、使用しようとしているSphinxのバージョンを判断できません
- 30. ユーザーがページ上のどこにいるかを判断するためのJavascript