您的位置:首页 > 其它

.NetCore Cap 注册 Consul 服务发现

2018-06-21 18:15 375 查看

注册服务发现

需要使用Cap中的UseDiscovery方法

具体用法如下

var capConsulConfig = Configuration.GetSection("CapConsulConfig").Get<CapConsulConfig>();
if (capConsulConfig.UseConsul)
{
capOptions.UseDiscovery(discovery =>
{
discovery.CurrentNodeHostName = capConsulConfig.CurrentNodeHostName;
discovery.CurrentNodePort = capConsulConfig.CurrentNodePort;
discovery.DiscoveryServerHostName = capConsulConfig.DiscoveryServerHostName;
discovery.DiscoveryServerPort = capConsulConfig.DiscoveryServerPort;
discovery.NodeId = capConsulConfig.NodeId;
discovery.NodeName = capConsulConfig.NodeName;
discovery.MatchPath = capConsulConfig.MatchPath;
});
}

这里我们通过配置来设置

"CapConsulConfig": {
"UseConsul": true,
"CurrentNodeHostName": "localhost",
"CurrentNodePort": 20000,
"DiscoveryServerHostName": "localhost",
"DiscoveryServerPort": 8500,
"NodeId": 1,
"NodeName": "IdentityServer_Cap",
"MatchPath": "/Home/Index"
}

配置说明

UseConsul:是否启用这个设置

CurrentNodeHostName: 当前应用程序的host

CurrentNodePort:应用程序端口

DiscoveryServerHostName:服务发现host,这里配置Consul地址

DiscoveryServerPort:Consul服务发现的端口 //8500

NodeId:节点编号

NodeName:节点名称 其实服务发现的服务名称 ServiceName

MatchPath:健康检查地址 默认是 应用程序根目录下的health 如:http://localhost:20000/health ,可以自定义配置,但是最后面都会有 health 路由地址

运行效果

Cap效果

接下来看下 Consul 服务发现的效果

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: