2016-09-20 10 views
0

https://github.com/Azure-Samples/service-fabric-dotnet-iot、それは、現在存在コレクション内の数項目のサービスファブリック信頼性の高いコレクション容量

if(currentNumberOfBufferedWorkItems >= m_MaxNumOfBufferedWorkItems) 
     { 
      throw new InvalidOperationException($"Work Manger is at maximum buffered work items:{currentNumberOfBufferedWorkItems}"); 
     } 

のようなものをチェックしm_MaxNumOfBufferedWorkItemsための電流値は10000

ですReliableコレクションのMaximum Buffer値を設定するために考慮する必要がある要因は何ですか?

答えて

3

提供されている例では、キューを使用して、後で処理されるアイテムをバッファします。彼らは、バッファのサイズを制限するために項目数をチェックします。これは選択肢であり、コレクションそのものに限定されるものではありません。信頼性の高いコレクションのサイズは、ノード上のディスクスペースによってのみ制限されます。

この例のバッファ制限は、処理能力によって決定される必要があります。バッファが制御不能になった場合は、処理能力を増やす必要があります。

+0

コレクションのサイズがディスク容量によってのみ制限されているかどうかは不明です。これまで、SFの信頼できるコレクションは、他のどのコレクションと同じ制限を持っていると言われていました。また、将来のリリースでSFチームはこの制限を取り除くと述べています。私は何かを誤解しており、本当に制限はありませんか? – cassandrad

+1

マシュー・スナイダー(Matthew Snider、MSFT)は、この制限がここ数日前のコメントで削除されたと述べています。https://azure.microsoft.com/en-us/documentation/articles/service-fabric-work-with-reliable-collections/ {2GBの制限が以前に削除されました(愚かなint)。今日では、値のためのすべてのキーとディスクのサイズのメモリに制限されています(辞書の値をページアウトしているため)。 – LoekD

関連する問題