static async Task Main(string[] args) { Console.Title = "Load Generator"; var endpointConfiguration = new EndpointConfiguration("LoadGenerator"); endpointConfiguration.ApplyCommonNServiceBusConfiguration(enableMonitoring: false); endpointConfiguration.SendOnly(); var endpoint = await Endpoint.Start(endpointConfiguration) .ConfigureAwait(false); Console.WriteLine("Press ▲/▼ arrows to increase/decrease messages per second"); Console.WriteLine("Press S to cause a spike of 25 messages"); Console.WriteLine("Press P to pause/unpause message sending"); Console.WriteLine("Press ESC key to exit"); var producer = new MessageProducer(endpoint); var producerTask = producer.Run(); await UILoop(producer); producer.Stop(); await producerTask; await endpoint.Stop() .ConfigureAwait(false); }
IEndpointInstance BootstrapNServiceBusForMessaging(IContainer container) { var endpointConfiguration = new EndpointConfiguration("Marketing.Api"); endpointConfiguration.ApplyCommonNServiceBusConfiguration(container); return(Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult()); }
void BootstrapNServiceBusForMessaging(IServiceCollection services) { var endpointConfiguration = new EndpointConfiguration("Billing.Api"); endpointConfiguration.ApplyCommonNServiceBusConfiguration(); endpoint = Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult(); services.AddSingleton <IMessageSession>(endpoint); }
IEndpointInstance BootstrapNServiceBusForMessaging(IContainer container) { var endpointConfiguration = new EndpointConfiguration("Sales.Api"); endpointConfiguration.ApplyCommonNServiceBusConfiguration(container); // Configure saga audit plugin endpointConfiguration.AuditSagaStateChanges("Particular.ServiceControl"); return(Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult()); }
IEndpointInstance BootstrapNServiceBusForMessaging(IServiceCollection services) { var endpointConfiguration = new EndpointConfiguration("EShop.UI"); endpointConfiguration.PurgeOnStartup(true); endpointConfiguration.ApplyCommonNServiceBusConfiguration(); var instance = Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult(); services.AddSingleton <IMessageSession>(instance); return(instance); }
IEndpointInstance BootstrapNServiceBusForMessaging(IContainer container) { var endpointConfiguration = new EndpointConfiguration("Shipping.Api"); endpointConfiguration.ApplyCommonNServiceBusConfiguration(container, bridgeConfigurator: transport => { // Bridge Shipping var bridge = transport.Routing().ConnectToBridge("bridge-shipping"); // Subscribe to events from warehouse to be delivered via bridge bridge.RegisterPublisher(typeof(ItemStockUpdated), "warehouse"); }); // Remove assembly information to be able to reuse message schema from different endpoints w/o sharing messages assembly endpointConfiguration.RegisterMessageMutator(new RemoveAssemblyInfoFromMessageMutator()); // Configure saga audit plugin endpointConfiguration.AuditSagaStateChanges("Particular.ServiceControl"); return(Endpoint.Start(endpointConfiguration).GetAwaiter().GetResult()); }