使用する
代替デザインのアイデア
これらは代替設計のアイデアです。
-
バックグラウンドのリモート関数呼び出し(bgRFC)に基づくNoSendシナリオ。bgRFC NoSendシナリオは、キューにリンクリストを使用します。
-
バックグラウンドのリモート関数呼び出し(bgRFC)に基づくNoSendシナリオ。qRFC NoSendシナリオは、これまでMMWで使用されてきました。
仕様フェーズでは、LDQと2つの代替設計アイデアのプロトタイプが作成され、さまざまなデータボリュームの読み取りと書き込みのために比較されました。LDQオプションは、パフォーマンスと保守性の両方で他のオプションよりも優れていることが証明されました(bgRFC NoSend MMWパフォーマンスの数値を参照)。
ローカルデータキュー:概要
再利用/使用するコンポーネント/依存関係の使用
LDQは、 qRFCNoSendシナリオの再実装と再設計です。
制限
この説明では、ローカルデータキューの監視については説明していません。
きめ細かなデザイン
明示的および暗黙的なコミット
IF_LDQ_READERインターフェイスのCONFIRM_QUEUE_UNITSメソッドを除いて、LDQクラスのすべてのメソッドは、データベースでの作業を永続化するために明示的なコミットを必要とします。このメソッドは、 ImplicitCommitを実行します。
シーケンスユニット数
キュー内のユニットのシーケンス番号は、キュー内のユニットの位置を表します。シーケンス番号は一意であり、識別されたキュー内で昇順です。キュー内のユニットを削除した後は、シーケンス番号は再利用されません。
頻繁に確認する
パフォーマンス上の理由から、すべての読み取りユニットは読み取り可能なようにストレージに保持されるため、読み取りユニットをすぐに確認することを強くお勧めします。
建築
クラス図は次のとおりです。