Exemplo n.º 1
0
 public LoadBalancerFactoryTests()
 {
     _serviceProviderFactory = new Mock <IServiceDiscoveryProviderFactory>();
     _serviceProvider        = new Mock <IServiceDiscoveryProvider>();
     _loadBalancerCreators   = new ILoadBalancerCreator[]
     {
         new FakeLoadBalancerCreator <FakeLoadBalancerOne>(),
         new FakeLoadBalancerCreator <FakeLoadBalancerTwo>(),
         new FakeLoadBalancerCreator <FakeNoLoadBalancer>(nameof(NoLoadBalancer)),
         new BrokenLoadBalancerCreator <BrokenLoadBalancer>(),
     };
     _factory = new LoadBalancerFactory(_serviceProviderFactory.Object, _loadBalancerCreators);
 }
Exemplo n.º 2
0
        public async Task <ServiceNode> GetServiceAsync(string serviceName)
        {
            var serviceList = await serviceProvider.GetServiceAsync(serviceName);

            if (serviceList == null || serviceList.Count <= 0)
            {
                return(null);
            }
            ServiceNode serviceNode;

            if (serviceList.Count == 1)
            {
                serviceNode = serviceList[0];
            }
            else
            {
                serviceNode = LoadBalancerFactory.CreateInstance(serviceDiscoveryOptions.typeLoadBalancer).Resolve(serviceName, serviceList);
            }
            return(serviceNode);
        }
Exemplo n.º 3
0
 public LoadBalancerFactoryTests()
 {
     _serviceProviderFactory = new Mock <IServiceDiscoveryProviderFactory>();
     _serviceProvider        = new Mock <IServiceDiscoveryProvider>();
     _factory = new LoadBalancerFactory(_serviceProviderFactory.Object);
 }
Exemplo n.º 4
0
 public ReportingLoadBalancerFactory(LoadBalancerFactory loadBalancerFactory, SubchannelReporter subchannelReporter)
 {
     _loadBalancerFactory = loadBalancerFactory;
     _subchannelReporter  = subchannelReporter;
 }
 public LoadBalancerFactoryTest()
 {
     _DummyFactory = new DummyClassFactory();
     _Fact = _DummyFactory.Factory;
     _Factory = new LoadBalancerFactory(BalancingOption.MinizeObjectCreation);
 }
        public async Task PreferParralelism_ShouldInstanciateVariousPocoEvenIfActorIsWithoutActivity()
        {
            _Factory = new LoadBalancerFactory(BalancingOption.PreferParralelism);
            var target = _Factory.Build<IDummyInterface2>(_Fact, 2);
            await target.SlowDoAsync();
            Thread.Sleep(10);
            await target.SlowDoAsync();

            _DummyFactory.Created.Should().Be(2);
        }
 public LoadBalancerFactoryTest()
 {
     _DummyFactory = new DummyClassFactory();
     _Fact         = _DummyFactory.Factory;
     _Factory      = new LoadBalancerFactory(BalancingOption.MinizeObjectCreation);
 }