public static void Main(string[] args) { var siloPort = 11111; int gatewayPort = 30000; var siloAddress = IPAddress.Loopback; var silo = new SiloHostBuilder() .UseDashboard(options => { options.HostSelf = true; options.HideTrace = false; }) .UseDevelopmentClustering(options => options.PrimarySiloEndpoint = new IPEndPoint(siloAddress, siloPort)) .UseInMemoryReminderService() .ConfigureEndpoints(siloAddress, siloPort, gatewayPort) .Configure <ClusterOptions>(options => { options.ClusterId = "helloworldcluster"; options.ServiceId = "1"; }) .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); silo.StartAsync().Wait(); var client = new ClientBuilder() .UseStaticClustering(options => options.Gateways.Add((new IPEndPoint(siloAddress, gatewayPort)).ToGatewayUri())) .Configure <ClusterOptions>(options => { options.ClusterId = "helloworldcluster"; options.ServiceId = "1"; }) .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); client.Connect().Wait(); var cts = new CancellationTokenSource(); TestCalls.Make(client, cts); Console.WriteLine("Press key to exit..."); Console.ReadLine(); cts.Cancel(); silo.StopAsync().Wait(); }
public static void Main(string[] args) { var siloPort = 11111; int gatewayPort = 30000; var siloAddress = IPAddress.Loopback; var silo = new SiloHostBuilder() .UseDashboard(options => { options.HostSelf = true; options.HideTrace = false; }) .UseDevelopmentClustering(options => options.PrimarySiloEndpoint = new IPEndPoint(siloAddress, siloPort)) .UseInMemoryReminderService() .UsePerfCounterEnvironmentStatistics() .ConfigureEndpoints(siloAddress, siloPort, gatewayPort) .Configure <ClusterOptions>(options => options.ClusterId = "helloworldcluster") .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .ConfigureServices(services => { // Workaround for https://github.com/dotnet/orleans/issues/4129 services.AddSingleton(cp => cp.GetRequiredService <IHostEnvironmentStatistics>() as ILifecycleParticipant <ISiloLifecycle>); }) .Build(); silo.StartAsync().Wait(); var client = new ClientBuilder() .UseStaticClustering(options => options.Gateways.Add((new IPEndPoint(siloAddress, gatewayPort)).ToGatewayUri())) .Configure <ClusterOptions>(options => options.ClusterId = "helloworldcluster") .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); client.Connect().Wait(); var cts = new CancellationTokenSource(); TestCalls.Make(client, cts); Console.WriteLine("Press key to exit..."); Console.ReadLine(); cts.Cancel(); silo.StopAsync().Wait(); }
public static void Main(string[] args) { var configuration = ClusterConfiguration.LocalhostPrimarySilo(33333) .RegisterDashboard(); var silo = new SiloHostBuilder() .UseConfiguration(configuration) .UseDashboard(options => { options.HostSelf = true; options.HideTrace = false; }) .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); silo.StartAsync().Wait(); var client = new ClientBuilder() .UseConfiguration(ClientConfiguration.LocalhostSilo()) .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); client.Connect().Wait(); var cts = new CancellationTokenSource(); TestCalls.Make(client, cts); Console.WriteLine("Press key to exit..."); Console.ReadLine(); cts.Cancel(); silo.StopAsync().Wait(); }
public static void Main(string[] args) { var siloPort = 11111; int gatewayPort = 30000; var siloAddress = IPAddress.Loopback; var silo = new SiloHostBuilder() .UseDashboard(options => { options.HostSelf = false; }) .UseDevelopmentClustering(options => options.PrimarySiloEndpoint = new IPEndPoint(siloAddress, siloPort)) .UseInMemoryReminderService() .ConfigureEndpoints(siloAddress, siloPort, gatewayPort) .Configure <ClusterOptions>(options => options.ClusterId = "helloworldcluster") .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); silo.StartAsync().Wait(); var client = new ClientBuilder() .UseDashboard() .UseStaticClustering(options => options.Gateways.Add((new IPEndPoint(siloAddress, gatewayPort)).ToGatewayUri())) .Configure <ClusterOptions>(options => options.ClusterId = "helloworldcluster") .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); client.Connect().Wait(); var cts = new CancellationTokenSource(); TestCalls.Make(client, cts); WebHost.CreateDefaultBuilder(args) .ConfigureServices(services => { services.AddServicesForSelfHostedDashboard(client, options => { options.HideTrace = true; }); }) .ConfigureLogging(builder => { builder.AddConsole(); }) .Configure(app => { app.UseOrleansDashboard(); app.Map("/dashboard", d => { d.UseOrleansDashboard(); }); }) .Build() .Run(); cts.Cancel(); silo.StopAsync().Wait(); }
public static void Main(string[] args) { var configuration = ClusterConfiguration.LocalhostPrimarySilo(33333) .RegisterDashboard(); var silo = new SiloHostBuilder() .UseConfiguration(configuration) .UseDashboard(options => { options.HostSelf = false; }) .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); silo.StartAsync().Wait(); var client = new ClientBuilder() .UseConfiguration(ClientConfiguration.LocalhostSilo()) .UseDashboard() .ConfigureApplicationParts(appParts => appParts.AddApplicationPart(typeof(TestCalls).Assembly)) .ConfigureLogging(builder => { builder.AddConsole(); }) .Build(); client.Connect().Wait(); var cts = new CancellationTokenSource(); TestCalls.Make(client, cts); WebHost.CreateDefaultBuilder(args) .ConfigureServices(services => { services.AddServicesForSelfHostedDashboard(client, options => { options.HideTrace = true; }); }) .ConfigureLogging(builder => { builder.AddConsole(); }) .Configure(app => { app.UseOrleansDashboard(); app.Map("/dashboard", d => { d.UseOrleansDashboard(); }); }) .Build() .Run(); cts.Cancel(); silo.StopAsync().Wait(); }