パラメータの制約と推奨事項
Apache RocketMQシステムには多くのカスタムパラメータとリソース名があります。特定のパラメータの設定が不適切なためにアプリケーション例外が発生するのを避けるために、以下の指示に従ってシステムを設定することをお勧めします。
パラメータ | 推奨範囲 | 指示 |
---|---|---|
トピック名 | 文字の推奨:a~z A~Z 0~9 (_)(-)(%) 推奨長さ:1~64文字 システム予約文字:以下の予約文字または特殊なプレフィックスを持つ文字は、トピック名に使用できません。 予約文字: TBW102 _ BenchmarkTest _ SELF_TEST_TOPIC _ OFFSET_MOVED_EVENT _ SCHEDULE_TOPIC_XXXX _ RMQ_SYS_TRANS_HALF_TOPIC _ RMQ_SYS_TRACE_TOPIC _ RMQ_SYS_TRANS_OP_HALF_TOPIC 予約プレフィックス文字: _ rmq_sys_ %RETRY%_ %DLQ%_ rocketmq-broker- | トピック名は、短く、一般的な文字を使用し、特殊文字を避けてください。特殊文字は、システムの解析で例外を引き起こす可能性があります。文字数が長すぎると、メッセージが拒否される可能性があります。 |
ConsumerGroup名 | 文字の推奨:a~z A~Z 0~9 (_)(-)(%) 推奨長さ:1~64文字 システム予約文字:以下の予約文字または特殊なプレフィックスを持つ文字は、ConsumerGroup名に使用できません。 予約文字: _ DEFAULT_CONSUMER _ DEFAULT_PRODUCER _ TOOLS_CONSUMER _ FILTERSRV_CONSUMER _ __MONITOR_CONSUMER _ CLIENT_INNER_PRODUCER _ SELF_TEST_P_GROUP _ SELF_TEST_C_GROUP _ CID_ONS-HTTP-PROXY _ CID_ONSAPI_PERMISSION _ CID_ONSAPI_OWNER _ CID_ONSAPI_PULL _ CID_RMQ_SYS_TRANS _ 予約文字 * CID_RMQ_SYS_ * CID_HOUSEKEEPING | null |
ACLクレデンシャル | 文字の推奨:AK(AccessKey ID)、SK(AccessKey Secret)、およびTokenはaのみをサポート~z A~Z 0~9 推奨長さ:1024文字未満。 | null |
リクエストタイムアウト | デフォルト値:3000ms。 | リクエストタイムアウト期間は、クライアントのローカル同期呼び出しの待機時間です。長いスレッドブロッキング時間を避けるために、実際のアプリケーションに基づいて適切な値を設定してください。 |
最大メッセージサイズ | デフォルト値:4 MB。メッセージの圧縮は含まれておらず、メッセージ本文のサイズのみが計算されます。 値の範囲:4 MB未満を推奨。 | メッセージの送信は圧縮し、大きなファイルの送信を避けるために負荷を制御する必要があります。 |
メッセージのカスタムプロパティ | 文字制限:すべての表示可能な文字。 推奨長さ:すべてのキーと値の合計が16KB未満。 システム予約プロパティ:以下の予約プロパティは、カスタムプロパティのキーとして使用できません。システム予約キー | null |
MessageGroup | 文字制限:すべての表示可能な文字。 推奨長さ:1~64. | 一般的に、MessageGroupは、順序、ユーザーなど、順序を保証する必要がある一連のメッセージ識別子に設定されます。 |
メッセージ送信の最大再試行回数 | デフォルト値:3回。 値の範囲:制限なし。 | 送信再試行ポリシーはアプリケーションには非表示です。サービススレッドのブロックを避けるために、小さな値が推奨されます。最大再試行回数に達してもメッセージが正常に送信されない場合は、メッセージの信頼性を確保するために、サービス側でバックトラッキングを実行することをお勧めします。 |
メッセージ消費の最大再試行回数 | デフォルト値:16回。 | 消費再試行回数は、無制限の消費再試行回数を避けるために、実際のサービス要件に基づいて適切な値を設定します。再試行回数が多すぎると、システムの負荷が増加します。 |
トランザクション例外チェック間隔 | デフォルト値:60秒。 | トランザクション例外チェック間隔とは、システムの再起動または異常な状態のために半トランザクションメッセージがコミットされない間隔です。プロデューサークライアントはこの間隔に従ってトランザクションの状態を再確認します。間隔を短く設定しないでください。それ以外の場合は、頻繁なコールバック呼び出しによってシステムのパフォーマンスが影響を受ける可能性があります。 |
半トランザクションメッセージの最初のコールバック時間 | デフォルト値:参照[トランザクション例外チェック間隔]* 最大チェック回数 | null |
半トランザクションメッセージの最大タイムアウト期間 | デフォルト値:4時間。 | システムの再起動または異常な状態のために半トランザクションメッセージがコミットされない場合、プロデューサークライアントはトランザクション例外チェック間隔に従って再確認します。半トランザクションメッセージのタイムアウト期間後も結果が返されない場合、半トランザクションメッセージは強制的にロールバックされます。 |
PushConsumer SDKキャッシュ | デフォルト値: * 最大キャッシュ数:1024 * 最大キャッシュサイズ:64 MB。 | キャッシュされたメッセージの数とサイズは、システムメモリで許可される制限に設定する必要があります。 |
PushConsumer再試行間隔 | デフォルト値: * 並行配信タイプ:間隔時間は段階的に変化します。 * FIFO配信タイプ:3000 ms。 | null |
PushConsumer消費スレッド | デフォルト値:20 | null |
メッセージ取得バッチサイズ | デフォルト値:32 | コンシューマは一度にサーバから最大数のメッセージを取得します。実際のサービスに基づいて適切なパラメータ値を設定することをお勧めします。一度に取得するメッセージ数が多すぎると、消費に失敗した場合に多数のメッセージが重複する可能性があります。 |
SimpleConsumer最大非表示時間 | デフォルト値:このパラメータは必須であり、デフォルト値はありません。 推奨範囲:10秒~12時間。 | 消費非表示時間とは、メッセージ処理と失敗後の再試行の間の総時間です。実際の時間よりも少し長く値を設定することをお勧めします。 |