私は Apache Camel とアグリタ EIP を使用してルートに取り組んでいます。ルートは、jms を介してデータベースからデータを消費し、それを集約して、Web サービスに送信します。
アグリゲーターは、Oracle データベースにデータを永続化します。
ご存知のように、アグリゲーターの同期ブロックはそのルートのボドルネックです。
すでに複数のバケット (correltionExpression = threadName) を使用しようとしましたが、速度が思うように向上しませんでした...
1 秒間に少なくとも 150 件のメッセージが必要です。現時点では、70 のみが可能です :(
速度を改善する方法を知っている人はいますか? たぶん、2番目のアグリゲーターですか?何か提案はありますか?
最後の質問: アグリゲーターはメッセージを複数のバケットに並行して書き込むことができますか? それとも、ロックが原因でそうではないのでしょうか? コード内のドキュメントにはそうであると記載されているため (相関キーごとの同時集計によりパフォーマンスが向上する可能性があります)、私の意見では、コード自体はそれを行いません。
前もって感謝します!!
ステファン