zoukankan      html  css  js  c++  java
  • Orleans[NET Core 3.1] 学习笔记(三)( 2 )客户端配置

    客户端配置

    通过一个ClientBuilder和多个补充选项类,以编程方式配置一个用于连接Silo集群并将请求发送至Grain的客户端。

    客户端配置示例:

    var client = new ClientBuilder()
        // 集群信息
        .Configure<ClusterOptions>(options =>
        {
            options.ClusterId = "my-first-cluster";
            options.ServiceId = "MyOrleansService";
        })
        // 群集提供程序
        .UseAzureStorageClustering(options => options.ConnectionString = connectionString)
        // Application parts: just reference one of the grain interfaces that we use
        .ConfigureApplicationParts(parts => parts.AddApplicationPart(typeof(IHello).Assembly))
        .Build();
    

    注意:使用UseAzureStorageClustering需要引用Microsoft.Orleans.Clustering.AzureStorage

    下面让我们细分该示例中使用的步骤:

    集群信息

        [...]
        // Clustering information
        .Configure<ClusterOptions>(options =>
        {
            options.ClusterId = "orleans-docker";
            options.ServiceId = "AspNetSampleApp";
        })
        //客户端连接非本地的网关,配置这个就行了,可以配置多个网关
        .UseStaticClustering(new IPEndPoint[] { new IPEndPoint(IPAddress.Parse(""), 30000) })
        [...]
    

    这里我们使用了两个设置:

    设置ClusterId"my-first-cluster":这是为Orleans集群的唯一ID。使用此ID的所有客户端和Silo将能够直接相互通信。例如,有些人会选择ClusterId对每个部署使用不同的名称。
    设置ServiceId"AspNetSampleApp":这是你的应用程序的唯一ID,将被一些控制程序使用(例如用于持久性存储)。该ID在整个部署中应该是稳定的(不可更改)

    集群支撑程序

        [...]
        // Clustering provider
        .UseAzureStorageClustering(options => options.ConnectionString = connectionString)
        [...]
    

    客户端将使用此程序配置发现群集中所有可用的网关。Orleans有几个支撑程序可以选择,在此示例中,我们使用Azure Table提供程序。

    要获取更多详细信息,请查看“服务器配置”页面中的“Server Configuration”部分。

    应用部分

        [...]
        // Application parts: just reference one of the grain interfaces that we use
        .ConfigureApplicationParts(parts => parts.AddApplicationPart(typeof(IHello).Assembly)).WithReferences())
        [...];
    

    便捷路由

    目录Orleans[NET Core 3.1] 学习笔记(一).NET环境下的分布式应用程序

    上一节Orleans[NET Core 3.1] 学习笔记(三)( 1 )本地开发配置

    下一节Orleans[NET Core 3.1] 学习笔记(三)( 3 )服务端配置

  • 相关阅读:
    模仿jquery的一些实现
    使按钮失效的方法
    类似jquery的一个demo
    oracle 集合变量以及自定义异常的用法
    java的for循环问题的解决,以及安卓中ListView插入数据的问题
    Spring AOP基于xml配置实例
    plsql 的循环之 goto
    Spring AOP报错
    补全aaz288 可能有问题的过程 P_COMPL_AAZ288
    Spring注解配置
  • 原文地址:https://www.cnblogs.com/amber-L/p/12031346.html
Copyright © 2011-2022 走看看