現在、私はAWSを使用してサーバープールを構成しています。 2つのデータベースサーバーと、スケーラブルなサーバーアレイと、その前に2つのロードバランサを備えたシンプルなセットアップです。すべてのマシンはフェイルオーバーを待機しており、すべてがかなり堅牢でなければなりません。DNSラウンドロビンフェールオーバーシナリオの非常に遅い要求
ロードバランサは、ラウンドロビンDNSによるフェイルオーバーすることができるはずです。したがって、幸せな日のシナリオでは、両方のマシンがヒットし、トラフィックをアレイに分散します。これらのマシンの1つがダウンしているときに、クライアントブラウザの再試行と組み合わせてDNSをラウンドロビンすると、ブラウザはターゲットホストをタイムアウトしたマシンに移動する必要があります。これは私が思いついたものではありませんが、非常に良い解決策のようです。
問題は次のとおりです。シフトは実際には発生しますが、失敗したリクエストではなく、同じブラウザからのすべての後続のリクエストに対して発生します。したがって、単純なページ要求は、21秒間の読み込み時間がかかり、その後、すべての画像の読み込みに21秒かかります。次のすべてのページリクエストにもこの時間がかかります。したがって、フェールオーバーは機能しますが、同時に全く役に立たない時間です。掘るから
出力:
。 < < >> DIG 9.6.1-P2 < < >> example.com
;;グローバルオプション:+ cmd
;;答え:
;; - >> HEADER < < - オペコード:QUERY、状態:NOERROR、ID:45224
;;フラグ:qr rd ra; QUERY:1、ANSWER:2、AUTHORITY:0、追加:0
;;質問セクション:
; example.com IN A
;;回答セクション:
www.example.com 86400 IN A 1.2.3.4
www.example.com 86400 IN A 1.2.3.4
;;クエリ時間:31 msec
;;サーバー:172.16.0.23#53(172.16.0.23)
;;いつ:月12月12日12時21分25秒
;; MSGのSIZEのRCVD:事前に67
ありがとう!
マールテンフックストラ
Kingsquareインフォメーションサービス
これは、DNSラウンドロビンのクライアントサイドの動作の私の以前の理解とは実際には異なります。それは完璧な症状に合っています。これは、IPをDNSから取り除くことを意味し、マシンを固定するだけで2つの解決策になります。本当に楽しいニュースではありませんが、まだありがたいです! –