トランザクションを書き込む

前のセクションでは、属性とイベントの読み取り相互作用について説明しました。このセクションでは、属性の記述について説明します。これは、クラスタの属性値(レベルなど)の変更です。

時間指定なしの書き込みトランザクション

時間指定なしの書き込みトランザクションのオペレーションのシーケンス
図 1: 時間指定なしの書き込みトランザクション

書き込みリクエスト アクション

方向: イニシエータ -> ターゲット

読み取りリクエスト アクションと同様に、このアクションではイニシエータがターゲットに次のものを提供します。

  • 書き込みリクエスト: パスとデータを含む 1 つ以上のタプルのリスト。
  • Timed Request: このアクションが時間指定書き込みトランザクションの一部かどうかを示すフラグ。
  • レスポンスを抑制: レスポンス ステータス アクションを抑制する必要があるかどうかを示すフラグ。

レスポンス書き込みアクション

方向: ターゲット -> イニシエータ

ターゲットは書き込みリクエスト アクションを受信すると、次の内容を含むレスポンス 書き込みアクションでトランザクションを確定します。

  • 書き込みレスポンス: 書き込みリクエスト アクションに送信されたすべての書き込みリクエストのパスとエラーコードのリスト。

タイミング指定なし書き込みの制限

書き込みリクエスト アクションはグループキャストにできますが、この場合はレスポンス抑制フラグを設定する必要があります。そうしないと、グループのすべてのメンバーから同時のレスポンスでネットワークにフラッディングが発生する可能性があるためです。

この動作を有効にするために、書き込みリクエスト リストで使用されるパスにグループを含めることができます。また、ワイルドカードを含めることもできます(ただし、エンドポイント フィールド内)。

時間指定書き込みトランザクション

タイミング指定書き込みトランザクションのオペレーション シーケンス
図 2: 時間指定書き込みトランザクション

時間指定書き込みトランザクションでは、時間指定なし書き込みトランザクションにいくつかのステップが追加されます。

時間制限付きリクエスト アクション

方向: イニシエータ -> ターゲット

イニシエータは、以下を含むこのアクションを送信するトランザクションを開始します。

  • タイムアウト: このトランザクションをオープンのままにできる時間(ミリ秒単位)。この間、イニシエータが送信した次のアクションは有効とみなされます。

時間指定リクエスト アクションを受信したら、ターゲットはステータス レスポンス アクションで時間指定リクエスト アクションを確認応答する必要があります。イニシエータは、エラーがないステータス レスポンス アクションを受信すると、書き込みリクエスト アクションを送信します。

書き込みリクエスト アクション

前述の書き込みリクエスト アクションと同じです。

レスポンス書き込みアクション

前述のレスポンス書き込みアクションと同じです。

タイミング指定書き込みの制限

時間制限付きリクエスト アクション、書き込みリクエスト アクション、書き込みレスポンス アクションはユニキャストのみです。