メッセージを再送すると、通常のメッセージ送信処理が中断されるため、SQL Remote Message Agent (dbremote) は再送要求の処理を遅らせます。デフォルトでは、SQL Remote Message Agent (dbremote) は、再送を要求したリモートユーザの送信頻度の半分の時間を待機します。
メッセージを再送する場合、SQL Remote Message Agent (dbremote) は次のタスクを実行します。
トランザクションログのスキャンを停止し、新しいメッセージの作成を停止する。
キャッシュに格納された送信待機中の現在のメッセージを削除する。トランザクションログの読み込み時とそれらのメッセージの作成時に SQL Remote Message Agent (dbremote) が実行したすべての作業が失われます。
再送要求で要求されたオフセットからトランザクションログを再読み込みする。SQL Remote Message Agent (dbremote) はメッセージを作成し、そのキャッシュに格納します。
次の送信頻度の時刻まで待機した後、メッセージを送信する。
メッセージの再送要求の緊急度と通常のメッセージ処理の優先度のバランスを取ってください。
-ru オプションでは、再送要求の緊急度を制御します。他のメッセージが到着するまで再送要求の処理を遅らせるには、このオプションの設定時間を長くします。たとえば、次のコマンドでは、再送要求を処理する前に 1 時間待機します。
dbremote -c "DSN=SQL Anywhere 16 Demo" -ru 1h |
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2013, SAP AG or an SAP affiliate company. - SAP Sybase SQL Anywhere 16.0 |