Javaで記述されたカスタムメッセージングシステムがあり、基本的に高負荷の下で一連のプッシュ応答を単一のプッシュ応答に集約する基本的なバッチ処理/圧縮機能を実装したいと思います。
基本的に:
- 過去1秒間に3つのメッセージが送信されたことを検出した場合は、応答のバッチ処理を開始し、5秒以内に起動するようにタイマーをスケジュールします。
- タイマーは、次の5秒間に受信したすべてのメッセージ応答を1つのメッセージに集約します
Javaでの最良の例を探す前に、これは実装されていると確信しています。私は本格的なメッセージングレイヤーを探していません。基本的な1秒あたりのメッセージの検出と、いくつかのタスクのスケジュールを設定します(もちろん、これは自分で簡単に作成できます。既存のアルゴリズムと比較して、欠落していないことを確認したいだけです。エッジケースまたは問題を可能な限り単純化したこと)。
基本的なQoSバッチ処理/スロットリング/圧縮の実装を構築するための優れたオープンソースの例はありますか?