Ereignisse
Erstellen von KI-Apps und Agents
17. März, 21 Uhr - 21. März, 10 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenDieser Browser wird nicht mehr unterstützt.
Führen Sie ein Upgrade auf Microsoft Edge durch, um die neuesten Features, Sicherheitsupdates und den technischen Support zu nutzen.
Ein Client zum Herstellen einer Verbindung mit einem Silocluster und zum Senden von Anforderungen an Grains wird programmgesteuert über einen IHostBuilder und mehrere zusätzliche Optionsklassen konfiguriert. Clientoptionsklassen folgen wie Silooptionen dem Muster „Optionen“ in .NET.
Ein Client zum Herstellen einer Verbindung mit einem Silocluster und zum Senden von Anforderungen an Grains wird programmgesteuert über einen ClientBuilder und mehrere zusätzliche Optionsklassen konfiguriert. Clientoptionsklassen folgen wie Silooptionen dem Muster „Optionen“ in .NET.
Tipp
Wenn Sie nur ein lokales Silo und einen lokalen Client zu Entwicklungszwecken starten möchten, finden Sie weitere Informationen unter Konfiguration der lokalen Entwicklung.
Fügen Sie das NuGet-Paket Microsoft.Orleans.Clustering.AzureStorage dem Clientprojekt hinzu.
Es gibt mehrere wichtige Aspekte bei der Clientkonfiguration:
Beispiel für eine Clientkonfiguration:
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();
Sehen wir uns die in diesem Beispiel verwendeten Schritte genauer an:
.Configure<ClusterOptions>(options =>
{
options.ClusterId = "orleans-docker";
options.ServiceId = "AspNetSampleApp";
})
Hier legen wir zwei Dinge fest:
"my-first-cluster"
: Dies ist eine eindeutige ID für den Orleans-Cluster. Alle Clients und Silos, die diese ID verwenden, können direkt miteinander kommunizieren. Einige verwenden beispielsweise für jede Bereitstellung eine andere ClusterId
."AspNetSampleApp"
: Dies ist eine eindeutige ID für Ihre Anwendung, die von einigen Anbietern (z. B. Persistenzanbietern) verwendet wird. Diese ID sollte in allen Bereitstellungen stabil sein (nicht geändert werden)..UseAzureStorageClustering(
options => options.ConfigureTableServiceClient(connectionString);
.UseAzureStorageClustering(
options => options.ConnectionString = connectionString)
Der Client ermittelt mithilfe dieses Anbieters alle im Cluster verfügbaren Gateways. Es stehen mehrere Anbieter zur Verfügung. In diesem Beispiel verwenden wir den Azure-Tabellenanbieter.
Weitere Informationen finden Sie unter Serverkonfiguration.
.ConfigureApplicationParts(
parts => parts.AddApplicationPart(
typeof(IValueGrain).Assembly))
.WithReferences())
Weitere Informationen finden Sie unter Serverkonfiguration.
Feedback zu .NET
.NET ist ein Open Source-Projekt. Wählen Sie einen Link aus, um Feedback zu geben:
Ereignisse
Erstellen von KI-Apps und Agents
17. März, 21 Uhr - 21. März, 10 Uhr
Nehmen Sie an der Meetup-Serie teil, um skalierbare KI-Lösungen basierend auf realen Anwendungsfällen mit Mitentwicklern und Experten zu erstellen.
Jetzt registrierenTraining
Modul
Erstellen Ihrer ersten Orleans-App mit ASP.NET Core 8.0 - Training
Erfahren Sie, wie Sie cloudnative, verteilte Anwendungen mit Orleans erstellen.