サーバー/リソースへのトラフィックを複製/ミラーリングする必要があります。
つまり、WebサーバーとしてサーバーAとBとN(nginx)があります。
N / resourceに向かうすべてのトラフィック-> AとBの両方にリダイレクト
出来ますか?
post_action
ディレクティブ。これは、本番マシンが要求を満たした後に実行されます。
サーバー/リソースへのトラフィックを複製/ミラーリングする必要があります。
つまり、WebサーバーとしてサーバーAとBとN(nginx)があります。
N / resourceに向かうすべてのトラフィック-> AとBの両方にリダイレクト
出来ますか?
post_action
ディレクティブ。これは、本番マシンが要求を満たした後に実行されます。
回答:
Nginxにhttpミラーモジュールが追加されました。ドキュメントはhttps://nginx.org/en/docs/http/ngx_http_mirror_module.htmlにあります
ドキュメントの構成例:
location / {
mirror /mirror;
proxy_pass http://backend;
}
location /mirror {
internal;
proxy_pass http://test_backend$request_uri;
}
nginx(1.13.4)の新機能は次のとおりです。http: //nginx.org/en/docs/http/ngx_http_mirror_module.html#mirror
ngx_http_mirror_moduleモジュール(1.13.4)は、バックグラウンドミラーサブリクエストを作成することにより、元のリクエストのミラーリングを実装します。サブリクエストのミラーリングへの応答は無視されます。
READMEに基づいてに GORがあなたの問題を解決するのを助けることができるようです。
私はこれを一度も使用したことがないので、今週はつまずいたので、幸運を祈ります!
NGINXでリクエストをミラーリングすることはできませんが、リクエストは変数として利用できます。ただし、Luaスクリプトを使用して、その変数をサブリクエストとしてサードパーティのサーバーに送信できます。 http://nginx.org/en/docs/http/ngx_http_core_module.html#var_request
掘り下げた後、解決策を見つけました。ここで確認できます。実際のトラフィックテストのために、別のnginxサーバーにリクエストをコピーして配信します。 @ scariによる
他の人の検索を容易にするためにここで言及すべきだと思いました。私のセットアップでは、uwsgiを使用しませんでした-代わりに、すべての着信要求を追加のサーバー(既に負荷分散されたバックボーンサーバーに加えて)に複製したかったのです。
それが役立つことを願って、
リロン