如何启用StatefulService辅助副本的读取?

时间:2016-07-01 18:56:37

标签: azure-service-fabric

许多官方Service Fabric文章指出应该可以对辅助副本执行读取操作,但我无法找到显示如何配置或使用此高级功能的单个代码示例。

一个很好的例子是详细说明这个简单的代码示例:https://github.com/Azure-Samples/service-fabric-dotnet-getting-started/tree/master/Services/AlphabetPartitions

对辅助节点的读取只是HTTP Get操作。

我想用它来扩展StatefulServices上的读取密集型操作。

1 个答案:

答案 0 :(得分:3)

在本文中找到答案:How to use the Reliable Services communication APIs

可以使用 ServiceReplicaListener 类的构造函数中名为 listenOnSecondary 的参数启用对辅助副本的读取。

此处显示了文章中的代码示例,并使用命名参数进行了调整:

protected override IEnumerable<ServiceReplicaListener> CreateServiceReplicaListeners()
{
    return new[]
    {
        new ServiceReplicaListener(context =>
            new MyCustomListener(context),
            "customReadonlyEndpoint",
            listenOnSecondary:true),

        new ServiceReplicaListener(context =>
            this.CreateServiceRemotingListener(context),
            "rpcPrimaryEndpoint",
            listenOnSecondary:false)
    };
}