赵计刚
每天进步一点点
随笔 - 234,  文章 - 0,  评论 - 243,  阅读 - 166万

1、定义一个服务

https://www.consul.io/docs/agent/services.html

该方法是服务注册中提供服务的最常用的方法。

关于服务的定义:服务的属性我们会在后边每出现一个总结一个,最后再做总结。

 

2、服务注册

2.1、创建服务文件所存放的文件夹

说明:

  • .d做后缀:表示一系列配置文件的存放目录(directory)

2.2、创建服务并写入上述文件夹中的一个文件

说明:

  • 一个服务我们会配置为json格式:比如上述的单引号之间的形式
  • 一个服务会写在一个json文件中

注意:

  • 如果上述文件夹没有权限进行操作,先改变文件夹权限,

 

3、服务查询

先启动consul进程。

切换屏幕-->

说明:

  • 根据-config-dir指定根据服务注册的目录中的文件来启动服务。

两种查询方式:DNSHTTP

3.1、DNS:

访问的服务名字:

  • tag.servicename.service.consul  tag和servicename都是创建服务的时候配置的
  • DNS访问的端口是8600

3.2、HTTP:

说明:

  • 访问的路径:host:port/版本号/catalog/service/服务名
  • Address:用于指定一个特定service的IP地址,默认情况下,使用的是该service使用的agent。

 

4、多个服务注册的情况

4.1、每一个服务注册到一个文件

假设现在又创建了一个secondservice服务,我会将该服务写入secondservice.json文件中去,如下:

使用http去访问:

说明:按照服务名去访问。

4.2、多个服务写在同一个json文件中

说明:

  • 放在services中而不是service里(上边的单文件单服务是放在service里的)
  • 多个服务放在一个数组里边

使用http去访问:

说明:按照服务名去访问。

注意:在实际开发中,微服务数量众多,

如果每个文件都放在一个文件里,文件会非常多,不好!

如果所有微服务都放在一个文件里,文件太大,也不好!

所以,需要二者结合。例如,假设有100个微服务,放在10个json文件中去,每个json文件存放10个服务。

 

文章参考自:https://www.consul.io/intro/getting-started/services.html

posted on   赵计刚  阅读(7976)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 一文读懂知识蒸馏
· 终于写完轮子一部分:tcp代理 了,记录一下

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示