public T UseService <T>() { var consulDiscoveryService = new ConsulDiscoveryService(new ServiceRegistryAddress { RegistryHost = "127.0.0.1", RegistryPort = 8500 }); var url = consulDiscoveryService.GetRpcService(_serviceName); var client = new HproseHttpClient(url); return(client.UseService <T>()); }
/// <summary> /// /// </summary> /// <param name="serviceName"></param> /// <param name="serviceRegistryAddress"></param> /// <param name="loadBalancer"></param> /// <param name="onError"></param> public RpcTcpClient(string serviceName, ServiceRegistryAddress serviceRegistryAddress, ILoadBalancer loadBalancer = null, Action <string, Exception> onError = null) { var consulDiscoveryService = new ConsulDiscoveryService(serviceRegistryAddress, loadBalancer); var service = consulDiscoveryService.GetRpcService(serviceName); if (service == null) { throw new ServiceDiscoveryException($"未发现可用的【{serviceName}】 服务"); } _client = new HproseTcpClient(service.ToString()); if (onError != null) { _client.OnError += (name, e) => { onError(name, e); }; } }