Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » SQL Remote » SQL Remote の配備と管理 » SQL Remote の管理 » 保証されたメッセージ配信システムの概要

 

消失または壊れたメッセージの再送

SYSREMOTEUSER システム・テーブルには、メッセージの再送を管理する 2 つのカラムが含まれています。

  • resend_count カラム   サブスクライバ・データベースがメッセージを失った回数を追跡するカウンタ。

  • rereceive_count カラム   Message Agent (dbremote) がパブリッシャ・ユーザからのメッセージが失われたと判断した回数を追跡するカウンタ。

サブスクライバ・データベースでメッセージが正しい順序で受信されると、次の処理が実行されます。

  1. サブスクライバの Message Agent (dbremote) は、メッセージを正しい順序で適用し、その SYSREMOTEUSER システム・テーブルを更新します。

  2. サブスクライバの Message Agent (dbremote) は、パブリッシャに確認メッセージを送信します。

  3. パブリッシャが確認メッセージを受信すると、パブリッシャの Message Agent (dbremote) はその SYSREMOTEUSER システム・テーブルを更新します。

メッセージが正しい順序で受信されなかった場合は、次の処理が実行されます。

  1. サブスクライバの Message Agent (dbremote) は、再送要求を送信し、その SYSREMOTEUSER システム・テーブルの rereceive_count 値を増分します。

  2. パブリッシャは再送要求を受信すると、その SYSREMOTEUSER システム・テーブルでサブスクライバの resend_count 値を増分します。

  3. パブリッシャの SYSREMOTEUSER システム・テーブル内で、log_sent 値に confirm_sent カラムの値が設定されます。log_sent 値を設定し直すと、オペレーションが再送されます。

参照