Service Fabric 可靠采集能力

Service Fabric Reliable Collection Capacity

在某些服务结构应用示例中参考: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 collection的Maximum Buffer值需要考虑哪些因素?

在提供的示例中,他们使用队列来缓冲要稍后处理的项目。他们检查项目计数以限制缓冲区的大小。这是选择,不受collection本身的限制。可靠 collection 的大小仅受节点上磁盘 space 的限制。

本例中的缓冲区限制应由处理能力决定。如果缓冲区增长失控,您需要增加更多处理能力。