1

クライアントに通知をプッシュするために SSE を使用しています。私のデータサービスのアーキテクチャは次のとおりです。

Client -> API Gateway(Spring cloud api gateway) -> f5(loadBalancer) -> (nginx) ->dataservice

ロードバランサーが見えないときはちゃんと通知がきますが、f5 ロードバランサーを導入するとうまくいかず、接続が切れてしまいます。

f5 ロード バランサは、長期の http 接続をサポートしていますか? それを機能させるには、どのような構成を行う必要がありますか。

4

2 に答える 2

0

質問に答えるには: はい、F5 は SSEをサポートしています。**HTTP compression**ここに構成のスナップショットを貼り付けることはできませんが、要約すると、プロパティをオフにすると、私の場合はうまくいったようです。

于 2019-02-11T05:27:29.673 に答える
0

あなたの質問は、それがまったく機能しないのか、それともしばらくすると機能しなくなるのか (そして、どのくらいの時間ですか?)

F5 VS (仮想サーバー) のタイプはStandardだと思います。

まず、HTTP プロファイルが何らかの形で有罪かどうかを確認できます。仮想サーバーの種類レイヤー 7 機能を備えた標準仮想サーバーの場合、可能であれば HTTP プロファイル (およびキャッシュなどの他のプロファイル) を削除して、標準に変更します。パフォーマンス Layer4タイプを試すこともできます。それは問題を解決していますか?「はい」の場合、問題がどこにあるかを特定する必要があります。おそらく、HTTP プロファイルまたは以下で説明するタイムアウト設定にあります。

Response Chunkingオプションで、VS 用に構成されたHTTP プロファイルを確認し、Preserveに設定します。詳細が必要な場合は、LTM HTTP プロファイル オプション: レスポンス チャンクを参照してください。

VS に関連するサーバーとクライアントの両方のTCP プロファイルを確認してください。タイムアウトの問題が疑われる場合は、[待機時間] オプションを [無期限] にする必要があります。タイムアウトを解決する方法は他にもありますが、そのうちの 1 つを紹介します。詳細が必要な場合は、K70025261を参照してください。

SSE を実行しているので、通知が遅くなる可能性があるため、Delayed Acks (デフォルトで有効) とNagle のアルゴリズム(デフォルトで無効) を無効にする必要があります。どちらも TCP プロファイル画面にいます。

于 2019-01-14T21:36:48.247 に答える