2016-07-27 7 views
0

azure-sdk-for-nodeを使用してazureサービスバスキューを作成しようとしていますが、リソースを無制限に設定するためのリソースを見つけることができません。ここ空白のサービスバスキューにメッセージの時間を無制限に設定するにはどうすればよいですか?

は私のサンプルコードである:

するvar QUEUEOPTIONSの= { MaxSizeInMegabytes: '5120'、 DefaultMessageTimeToLive 'PT1M' }。

serviceBusService.createQueueIfNotExists( 'MYQUEUE'、QUEUEOPTIONS、関数(誤差){ 場合(エラー){// キュー }存在!})。

何が無制限の時間DefaultMessageTimeToLiveに入りますか?

答えて

3

コードでは、メッセージTTLを1分に設定します。 TimeSpanの値が必要なため、TTLを無制限に設定することはできません。何かを割り当てる必要があります。かなり大きな値になる可能性がありますが、いくつかの理由でこの練習を避けることをお勧めします:

  1. ホストサービスです。 TTLは今日は制約されていませんが、可能性があります。
  2. メッセージングでは、非常に長いTTLを持つことは、実行すべきではないことを示しています(メッセージは小さく、処理は速いはずです)。今日のように、あなたが

    • 10675199日
    • 2時間
    • 48分
    • 5秒
    • 477である、TimeSpan.MaxValueにTTLを設定することができ、ことを言っ

ミリ秒

またはiso8601形式はP10675199DT2H48M5.4775807Sです。

現実的には、365日(P365D)、さらには30日(P30D)がメッセージングに多すぎます。

+0

応答に感謝します。 しかし、この比較(https://azure.microsoft.com/en-in/documentation/articles/service-bus-azure-and-service-bus-queues-compared-contrasted/)によると、これはサービスバスの機能ですキュー。 – AvinashSachdewani

+0

文書は人間によって書かれています。10675199日はおよそ29247年です。私はあなたが簡単に無制限と見なすことができるアプリケーションを作成していると確信しています:)私が伝えようとしている点は、スーパーの大きなTTLを得る方法を超えて、あなたはそれをサポートするべきではない将来は。メッセージングは​​速くなければならず、長いメッセージがルールよりも例外を格納する必要があります。 –

+0

また、TimeSpan.Maxを1ミリ秒単位で試してみると、ASBはそのTTL値を拒否します。だから、TimeSpan.Maxは無制限です。私はここでそれを明確にするためにPRを開いたhttps://github.com/Azure/azure-content/pull/7117 –

関連する問題