Feign の負荷分散の最下層はリボンです。Feign の再試行メカニズムはデフォルトで無効になっているため、タイムアウトの制御にはリボンが使用されます。
解決策
リボンの ConnectTimeout と ReadTimeout を構成する
# リボンロードバランシング
リボン:
eager-load:
enabled:true # ハングリーロード (eager-load) モード
MaxAutoRetries: 1 # 現在のインスタンスの再試行回数
MaxAutoRetriesNextServer: 2 # インスタンス切り替えの再試行回数
ConnectTimeout: 10000 # 接続timeout
ReadTimeout: 20000 # 読み取りデータのタイムアウト
# hystrix サーキット ブレーカー
hystrix:
コマンド:
デフォルト:
実行:
アイソレーション:
スレッド:
timeoutInMilliseconds: 60000 # 60 秒、ルーティングおよび転送時の HystrixCommand の実行タイムアウト時間。実行がこの時間を超えると、サービスが低下します
————— ————— —————
著作権に関する声明: この記事は CSDN ブロガー「Sima Cylinder Smashed the Cylinder」のオリジナル記事であり、CC 4.0 BY-SA 著作権契約に従っています。オリジナルのソース リンクとこの声明を添付してください。再版のため。
元のリンク: https://blog.csdn.net/yy756127197/article/details/106604654