それを書くのが簡単 (または楽しい) ではないというわけではありませんが、いわば車輪を再発明しないのは理にかなっています。私はさまざまな試みを見回してきましたが、これらの基準をサポートする実装にはまだ出会っていないようです。
MongoDB 永続性を備えた単純なキュー OSS システム。
- C#ドライバー(公式)ベース(完全POCO連載)
- ポーリングではなくテーラブル カーソル
- メッセージのタイムアウトを処理する (GC が正しく行われる)
- コンシューマーの障害を処理します (理想的には、再挿入を検出してクラッシュしますが、遅延再挿入によるタイムアウトは問題ありません)。完了時に findAndModify
- 複数のライター、複数のコンシューマー
- スレッドセーフ
あった方がよい;
- (最新の)メッセージを許可します(Q の古いメッセージを置き換えます)
私がまだ見つけていない GitHub に出回っているような素敵でシンプルなライブラリを誰かが持っている場合は、声を上げてください!