0

ここでは、C プログラミングで永続キューを実装したいと考えています。ここでは、メッセージを永続キューに保存してから、それらを送信したいと考えています。組み込みデバイスが再起動し、再起動すると、保留中の永続メッセージ キューからメッセージを送信することもできます。

これを実装する方法と、それがどのように機能するかを知っている人はいますか?

ありがとう

4

3 に答える 3

1

永続的なストレージに保存します。

ご提供いただいた情報でお伝えできることはこれ以上ありません。

于 2012-08-13T10:50:40.733 に答える
0

永続的にしたい場合は、ハードドライブにデータを保存する必要があります。私が提案するのは、http://www.sqlite.org/を使用することです。多くの言語にはバインディングがあります。

于 2012-08-13T10:52:50.973 に答える
0

永続メッセージは、ブローカに障害が発生した場合でも失われてはならないメッセージです。

永続キューはメッセージをディスクに書き込むことができるため、システムのシャットダウンや障害が発生した場合でもメッセージが失われることはありません。

現在、メッセージは、永続キューを通過する永続または非永続のいずれかになります。

送信者が永続メッセージをブローカに送信すると、ブローカーはそれを受信者キューにルーティングし、メッセージが永続ストアに書き込まれるのを待ってから、実際の送信者への配信を確認します。キューが永続的でない場合、キュー上のメッセージはディスクに書き込まれません。メッセージが永続的でない場合は、永続キューにある場合でもディスクに書き込まれません。

受信者キューが永続キューからメッセージを読み取る場合、受信者がメッセージを確認するまで、そのメッセージはキューから削除されません。

ここで、ディスク上のメッセージとブローカーの状態を記録するために、ジャーナリング メカニズムを組み込む必要があります。次に、メッセージとジャーナルのキャッシュを適切な順序で管理する必要があります。

これは、永続キューとは何か、および永続キューを記述する方法の簡単なアイデアです。永続キューは、IBM WebSphere、RedHat の MRG などの多くの独自ソフトウェア システムで使用されています。詳細については、それらを参照してください。

于 2012-08-13T14:02:25.717 に答える