Sdílet prostřednictvím


Konfigurace klienta

Nakonfigurujte klienta pro připojení ke clusteru sila a odesílání požadavků na zrnka prostřednictvím kódu programu prostřednictvím IHostBuilder a několika doplňkových tříd možností. Podobně jako možnosti sila se třídy klientských možností řídí vzorem Options v .NET.

Nakonfigurujte klienta pro připojení ke clusteru sila a odesílání požadavků na zrnka prostřednictvím kódu programu prostřednictvím ClientBuilder a několika doplňkových tříd možností. Podobně jako možnosti sila se třídy klientských možností řídí vzorem Options v .NET.

Návod

Pokud chcete pouze spustit místní silo a klienta pro účely vývoje, viz Konfigurace místního vývoje.

Přidejte Microsoft.Orleans.Clustering.AzureStorage balíček NuGet do vašeho klientského projektu.

Konfigurace klienta má několik klíčových aspektů:

  • Orleans informace o clusteringu
  • Poskytovatel clusteringu
  • Části aplikace

Příklad konfigurace klienta:

var client = new HostBuilder()
    .UseOrleansClient((context, clientBuilder) =>
    {
        clientBuilder.Configure<ClusterOptions>(options =>
        {
            options.ClusterId = "my-first-cluster";
            options.ServiceId = "MyOrleansService";
        })
        .UseAzureStorageClustering(
            options => options.ConfigureTableServiceClient(
                context.Configuration["ORLEANS_AZURE_STORAGE_CONNECTION_STRING"]));
    })
    .Build();
using Orleans.Hosting;

var client = new ClientBuilder()
    .Configure<ClusterOptions>(options =>
    {
        options.ClusterId = "my-first-cluster";
        options.ServiceId = "MyOrleansService";
    })
    .UseAzureStorageClustering(
        options => options.ConnectionString = connectionString)
    .ConfigureApplicationParts(
        parts => parts.AddApplicationPart(
            typeof(IValueGrain).Assembly))
    .Build();

Pojďme si rozdělit kroky použité v této ukázce:

Orleans informace o clusteringu

    .Configure<ClusterOptions>(options =>
    {
        options.ClusterId = "orleans-docker";
        options.ServiceId = "AspNetSampleApp";
    })

Tady nastavíme dvě věci:

  • Od ClusterOptions.ClusterId do "my-first-cluster": Jedná se o jedinečné ID pro klastr Orleans. Všichni klienti a oddělení používající toto ID můžou přímo komunikovat. Někteří lidé se můžou rozhodnout použít pro každé nasazení jiný ClusterId, například.
  • ClusterOptions.ServiceId na "AspNetSampleApp": Toto je jedinečné ID pro vaši aplikaci, které používají někteří poskytovatelé (např. poskytovatelé perzistence). Toto ID by mělo zůstat stabilní napříč nasazeními.

Poskytovatel clusteringu

.UseAzureStorageClustering(
    options => options.ConfigureTableServiceClient(connectionString);
.UseAzureStorageClustering(
    options => options.ConnectionString = connectionString)

Klient zjistí všechny dostupné brány v clusteru pomocí tohoto poskytovatele. K dispozici je několik poskytovatelů; Tady používáme poskytovatele tabulky Azure.

Další informace naleznete v tématu Konfigurace serveru.

Části aplikace

.ConfigureApplicationParts(
    parts => parts.AddApplicationPart(
        typeof(IValueGrain).Assembly))
        .WithReferences())

Další informace naleznete v tématu Konfigurace serveru.