継続タイムアウトに達したために、jettyエンドポイントのhttp応答に書き込めない交換機を管理するためのハンドラを登録する可能性はありますか?キャメル・エクスチェンジが桟橋の続きで終了しました
1
A
答えて
1
これは不可能です。遅い処理交換がある場合は、より高いタイムアウトを設定する必要があるかもしれません。
このようなonTimeoutイベントのフックを見つけて、それをキャメル・ブーティーでサポートするために必要なものがあるかどうかは、Jetty APIを参照してください。
2
私はこのような私のコードでErrorHandlingHttpBinding
というカスタムHttpBindingとの組み合わせで、この
if (continuation.isExpired()) {
String id = (String) continuation.getAttribute(EXCHANGE_ATTRIBUTE_ID);
// remember this id as expired
expiredExchanges.put(id, id);
log.warn("Continuation expired of exchangeId: {}", id);
consumer.getBinding().doWriteExceptionResponse(new TimeoutException(), response);
return;
}
ようif (continuation.isExpired())
ブロックでCamelContinuationServletを変更することによって、私のプロジェクトでは、それが利用可能になったので、私はちょうどその上で私のノートを追加します
public class ErrorHandlingHttpBinding extends DefaultHttpBinding {
@Override
public void doWriteExceptionResponse(Throwable exception, HttpServletResponse response) throws IOException {
if (exception instanceof TimeoutException) {
response.setStatus(HttpServletResponse.SC_GATEWAY_TIMEOUT);
response.getWriter().write("Continuation timed out...");
} else {
super.doWriteExceptionResponse(exception, response);
}
}
}
id="errorHandlingHttpBinding"
とスプリングBeanとして登録さjetty:http://localhost:21010/?useContinuation=true&continuationTimeout=1&httpBindingRef=errorHandlingHttpBinding
として成分ストリングにいいます。
関連する問題
- 1. 2つのポートとプロトコルのキャメル桟橋の休憩方法
- 2. - 桟橋
- 3. 桟橋なしのリング/コンビネーション
- 4. 桟橋サーバーログリクエストボディ
- 5. 桟橋サーバーエラー
- 6. 桟橋は、SBT
- 7. は桟橋
- 8. ロードアップ桟橋
- 9. 桟橋を使用した手動コードカバレッジ
- 10. 桟橋:HelloWorldの例では、私は桟橋に新たなんだ
- 11. 桟橋のスレッドプールembeddend
- 12. Mvnをマイポンポンファイルが桟橋
- 13. インテリ桟橋ランナープラグイン・エラー
- 14. 桟橋セッションクラスタリングにClassNotFoundException
- 15. Apacheのキャメル桟橋は、ラクダの桟橋に2.14.3バージョン以下</p> <p>を使用していますservice.Iをトリガされていないcomponent.Butコードスニペットである私はラクダの桟橋とのHTTPSサービスをトリガしていますSSLサービス
- 16. doGetは2回の桟橋サーバーを呼び出しました
- 17. 私はEclipseでのJettyサーバーを起動すると桟橋が(桟橋-WTPプラグインを使用して)WTPプラグイン
- 18. Mavenの桟橋のプラグイン - ディレイバックグラウンドモード
- 19. ジャージー+桟橋チャレンジ付きの春
- 20. 桟橋の展開:JSP
- 21. 桟橋8.1.1.v20120215(JSF + Mavenの)
- 22. 桟橋のオーバーレイ9.2以上
- 23. 春ブーツと桟橋のProxyServlet
- 24. のNode.jsと桟橋6
- 25. 桟橋とNettyの統合
- 26. 桟橋:WebコンソールのURL
- 27. 桟橋9ハンドラの例?
- 28. リサイクル桟橋Http2クライアントストリーム - ベストプラクティス?
- 29. は、Solrの桟橋でのssh 9
- 30. websocketsプロジェクトの桟橋のランエラーです。
今のところ解決策がありますが、調整が必要です。あなたは私の提案を以下に見て、それがラクダ桟橋に入る可能性があるかどうかを評価するかもしれません。 – micfra
これは良い解決策のようです。私はこれに関するチケットを記録している:https://issues.apache.org/jira/browse/CAMEL-10175。これをそのままの状態で実装するには、パッチ/ PRで作業してください。 –