Konfigurace klienta
Klient pro připojení ke clusteru sila a odesílání požadavků na zrní je nakonfigurován programově prostřednictvím IHostBuilder a několika doplňkových tříd možností. Podobně jako možnosti sila se třídy možností klienta řídí vzorem Možnosti v .NET.
Klient pro připojení ke clusteru sila a odesílání požadavků na zrní je nakonfigurován programově prostřednictvím ClientBuilder a několika doplňkových tříd možností. Podobně jako možnosti sila se třídy možností klienta řídí vzorem Možnosti v .NET.
Tip
Pokud chcete jenom spustit místní silo a místního klienta pro účely vývoje, přečtěte si téma Konfigurace místního vývoje.
Přidejte Microsoft .Orleans. Balíček NuGet Clustering.AzureStorage do 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 rozčlenět 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:
- to ClusterOptions.ClusterId
"my-first-cluster"
: toto je jedinečné ID clusteru Orleans . Všichni klienti a sila, kteří používají toto ID, budou moct vzájemně komunikovat přímo. Někteří se například rozhodnou pro jednotlivá nasazení použít jinouClusterId
. - to ClusterOptions.ServiceId
"AspNetSampleApp"
: toto je jedinečné ID pro vaši aplikaci, které bude používáno některými poskytovateli (například pro poskytovatele trvalosti). Toto ID by mělo být stabilní (beze změny) napříč nasazeními.
Poskytovatel clusteringu
.UseAzureStorageClustering(
options => options.ConfigureTableServiceClient(connectionString);
.UseAzureStorageClustering(
options => options.ConnectionString = connectionString)
Klient zjistí všechny brány dostupné v clusteru pomocí tohoto poskytovatele. K dispozici je několik poskytovatelů, tady v této ukázce používáme zprostředkovatele 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.