Tomcat 8.0 サーバーが nio モードで使用されます。その他はデフォルト設(shè)定です。
Spring mvc の殘りの部分を使用してインターフェイスを作成し、httpclient によって実裝された接続プールを通じて、resttemplate を使用してインターフェイスを呼び出します。 1,000 件のリクエストが同時(shí)に行われた場(chǎng)合、一部のリクエストがタイムアウトしたことが判明しました。アクセス障害の原因となります。 <しかし、一部のリクエストがタイムアウトになったため、アプリケーションはハングアップしませんでした>。
システム全體のアーキテクチャは次のとおりです。
アプリケーション A、B、C の 3 つがあります。
C はデータベースの操作、インターフェイスの提供、JSON の返しを擔(dān)當(dāng)します。
B はビジネスの処理と提供を擔(dān)當(dāng)します。インターフェイス、JSON の返し、C のインターフェイスの呼び出し、データの保存/読み取り
A はフロント デスクを擔(dān)當(dāng)し、B のインターフェイスを呼び出します。
A が B を呼び出すと、複雑なバランシングが nginx を通じて行われ、B サーバーが 2 つあります。
すみません、タイムアウトが発生する可能性のある狀況は何ですか?
まず?jiǎn)栴}がどのステップにあるのかを特定し、それを詳細(xì)に分析します。各インターフェース呼び出しの消費(fèi)時(shí)間を印刷できます