private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var key = GetCacheKey(e.Route.ServiceDescriptor); Lazy <AddressEntry> value; _concurrent.TryRemove(key, out value); }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var path = _configInfo.CommandPath; if (!path.EndsWith("/")) { path += "/"; } var zooKeeperClients = _zookeeperClientProvider.GetZooKeeperClients().Result; try { foreach (var zooKeeperClient in zooKeeperClients) { var nodePath = $"{path}{e.Route.ServiceDescriptor.Id}"; if (zooKeeperClient.StrictExistsAsync(nodePath).Result) { zooKeeperClient.DeleteAsync(nodePath).Wait(_configInfo.ConnectionTimeout); } } } catch (Exception ex) { if (ex is NoNodeException || ex.InnerException is NoNodeException) { _logger.LogDebug(ex.Message, ex); } else { throw ex; } } }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var key = GetCacheKey(e.Route.ServiceDescriptor); var addressEntry = _concurrent.GetOrAdd(key, k => new Lazy <AddressEntry>(() => new AddressEntry(e.Route.Address))).Value; addressEntry.SetAddresses(e.Route.Address.ToArray()); }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var key = GetCacheKey(e.Route.ServiceDescriptor); var item = _unHealths.Where(p => e.Route.Address.Select(addr => addr.ToString()).Contains(p.Item2.ToString())).ToList(); item.ForEach(p => _unHealths.Remove(p)); _concurrent.TryRemove(key, out ConsistentHash <AddressModel> value); }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var clients = _consulClientFactory.GetClients().Result; foreach (var client in clients) { client.KV.Delete($"{_configInfo.CommandPath}{e.Route.ServiceDescriptor.Id}").Wait(); } }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var path = _configInfo.CommandPath; if (!path.EndsWith("/")) { path += "/"; } _zooKeeper.deleteAsync($"{path}{e.Route.ServiceDescriptor.Id}").Wait(); }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var path = _configInfo.CommandPath; if (!path.EndsWith("/")) { path += "/"; } var nodePath = $"{path}{e.Route.ServiceDescriptor.Id}"; if (_zooKeeper.existsAsync(nodePath).Result != null) { _zooKeeper.deleteAsync(nodePath).Wait(); } }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var path = _configInfo.CommandPath; if (!path.EndsWith("/")) { path += "/"; } var zooKeepers = _zookeeperClientProvider.GetZooKeepers().Result; foreach (var zooKeeper in zooKeepers) { var nodePath = $"{path}{e.Route.ServiceDescriptor.Id}"; if (zooKeeper.Item2.existsAsync(nodePath).Result != null) { zooKeeper.Item2.deleteAsync(nodePath).Wait(); } } }
private void ServiceRouteManager_Add(object sender, ServiceRouteEventArgs e) { var key = GetKey(e.Route.ServiceRouteDescriptor); if (_container.IsRegisteredWithKey <RedisContext>(e.Route.ServiceRouteDescriptor.Id)) { var redisContext = _container.ResolveKeyed <RedisContext>(e.Route.ServiceRouteDescriptor.Id); _concurrent.GetOrAdd(key, e.Route); ConsistentHash <RedisEndPoint> hash; redisContext.dicHash.TryGetValue("redis", out hash); if (hash != null) { foreach (var node in e.Route.Address) { var hashNode = node as RedisEndPoint; var addr = string.Format("{0}:{1}", hashNode.Host, hashNode.Port); hash.Remove(addr); hash.Add(hashNode, addr); } } } }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { _consul.KV.Delete($"{_configInfo.CommandPath}{e.Route.ServiceDescriptor.Id}").Wait(); }
private void ServiceRouteManager_Add(object sender, ServiceRouteEventArgs e) { var key = GetCacheKey(e.Route.ServiceDescriptor); _concurrent.GetOrAdd(key, e.Route); }
private void ServiceRouteManager_Removed(object sender, ServiceRouteEventArgs e) { var key = GetCacheKey(e.Route.ServiceDescriptor); _concurrent.TryRemove(key, out ConsistentHash <AddressModel> value); }