public RabbitEventBus( IObserverUnitContainer observerUnitContainer, IRabbitEventBusContainer eventBusContainer, string exchange, string routePrefix, int lBCount = 1, bool reenqueue = true, bool persistent = false) { if (string.IsNullOrEmpty(exchange)) { throw new ArgumentNullException(nameof(exchange)); } if (string.IsNullOrEmpty(routePrefix)) { throw new ArgumentNullException(nameof(routePrefix)); } if (lBCount < 1) { throw new ArgumentOutOfRangeException($"{nameof(lBCount)} must be greater than 1"); } this.observerUnitContainer = observerUnitContainer; Container = eventBusContainer; Exchange = exchange; RoutePrefix = routePrefix; LBCount = lBCount; Persistent = persistent; ConsumerConfig = new ConsumerOptions { Reenqueue = reenqueue, ErrorQueueSuffix = "_error", MaxReenqueueTimes = 10 }; }
public ConsumerManager( ILogger <ConsumerManager> logger, IRabbitMQClient client, IGrainFactory grainFactory, IServiceProvider provider, IRabbitEventBusContainer rabbitEventBusContainer) { this.provider = provider; this.client = client; this.logger = logger; this.rabbitEventBusContainer = rabbitEventBusContainer; this.grainFactory = grainFactory; }
public RabbitEventBus( IServiceProvider serviceProvider, IRabbitEventBusContainer eventBusContainer, string exchange, string routePrefix, int lBCount = 1, ushort minQos = 100, ushort incQos = 100, ushort maxQos = 300, bool autoAck = false, bool reenqueue = false) { if (string.IsNullOrEmpty(exchange)) { throw new ArgumentNullException(nameof(exchange)); } if (string.IsNullOrEmpty(routePrefix)) { throw new ArgumentNullException(nameof(routePrefix)); } if (lBCount < 1) { throw new ArgumentOutOfRangeException($"{nameof(lBCount)} must be greater than 1"); } ServiceProvider = serviceProvider; observerUnitContainer = serviceProvider.GetService <IObserverUnitContainer>(); Container = eventBusContainer; Exchange = exchange; RoutePrefix = routePrefix; LBCount = lBCount; DefaultConsumerConfig = new BranchOptions { AutoAck = autoAck, MaxQos = maxQos, MinQos = minQos, IncQos = incQos, Reenqueue = reenqueue }; RouteList = new List <string>(); if (LBCount == 1) { RouteList.Add(routePrefix); } else { for (int i = 0; i < LBCount; i++) { RouteList.Add($"{routePrefix }_{ i.ToString()}"); } } _CHash = new ConsistentHash(RouteList, lBCount * 10); }
public RabbitEventBus( IObserverUnitContainer observerUnitContainer, IRabbitEventBusContainer eventBusContainer, string exchange, string routePrefix, int lBCount = 1, ushort qos = 5000, bool autoAck = false, bool reenqueue = true, bool persistent = false) { if (string.IsNullOrEmpty(exchange)) { throw new ArgumentNullException(nameof(exchange)); } if (string.IsNullOrEmpty(routePrefix)) { throw new ArgumentNullException(nameof(routePrefix)); } if (lBCount < 1) { throw new ArgumentOutOfRangeException($"{nameof(lBCount)} must be greater than 1"); } this.observerUnitContainer = observerUnitContainer; Container = eventBusContainer; Exchange = exchange; RoutePrefix = routePrefix; LBCount = lBCount; Persistent = persistent; ConsumerConfig = new ConsumerOptions { AutoAck = autoAck, Qos = qos, Reenqueue = reenqueue, }; RouteList = new List <string>(); if (LBCount == 1) { RouteList.Add(routePrefix); } else { for (int i = 0; i < LBCount; i++) { RouteList.Add($"{routePrefix }_{ i.ToString()}"); } } _CHash = new ConsistentHash(RouteList, lBCount * 10); }
public RabbitEventBus( IServiceProvider serviceProvider, IRabbitEventBusContainer eventBusContainer, string exchange, string routePrefix, int lBCount = 1) { if (string.IsNullOrEmpty(exchange)) { throw new ArgumentNullException(nameof(exchange)); } if (string.IsNullOrEmpty(routePrefix)) { throw new ArgumentNullException(nameof(routePrefix)); } if (lBCount < 1) { throw new ArgumentOutOfRangeException($"{nameof(lBCount)} must be greater than 1"); } ServiceProvider = serviceProvider; Container = eventBusContainer; Exchange = exchange; RoutePrefix = routePrefix; LBCount = lBCount; RouteList = new List <string>(); if (LBCount == 1) { RouteList.Add(routePrefix); } else { for (int i = 0; i < LBCount; i++) { RouteList.Add($"{routePrefix }_{ i.ToString()}"); } } _CHash = new ConsistentHash(RouteList, lBCount * 10); }