第三章 consul服务注册与服务查询
1、定义一个服务
https://www.consul.io/docs/agent/services.html
该方法是服务注册中提供服务的最常用的方法。
关于服务的定义:服务的属性我们会在后边每出现一个总结一个,最后再做总结。
2、服务注册
2.1、创建服务文件所存放的文件夹
说明:
- .d做后缀:表示一系列配置文件的存放目录(directory)
2.2、创建服务并写入上述文件夹中的一个文件
说明:
- 一个服务我们会配置为json格式:比如上述的单引号之间的形式
- 一个服务会写在一个json文件中
注意:
- 如果上述文件夹没有权限进行操作,先改变文件夹权限,
3、服务查询
先启动consul进程。
切换屏幕-->
说明:
- 根据-config-dir指定根据服务注册的目录中的文件来启动服务。
两种查询方式:DNS和HTTP
3.1、DNS:
访问的服务名字:
- tag.servicename.service.consul tag和servicename都是创建服务的时候配置的
- DNS访问的端口是
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
第三章 consul服务注册与服务查询的更多相关文章
- consul服务注册与服务发现的巨坑
最近使用consul作为项目的服务注册与服务发现的基础功能.在塔建集群使用中遇到一些坑,下面一个个的记录下来. consul集群多node consul集群的node也就是我们所说的consul实例. ...
- 【转】用 Consul 来做服务注册与服务发现
原文:https://segmentfault.com/a/1190000018731395?utm_source=tag-newest ------------------------------- ...
- SpringCloud+Consul 服务注册与服务发现
SpringCloud+Consul 服务注册与服务发现 1. 服务注册: 在Spring.factories有一段: # Discovery Client Configuration org.spr ...
- Go微服务框架go-kratos实战04:kratos中服务注册和服务发现的使用
一.简介 关于服务注册和服务发现介绍,我前面的文章有介绍过 - 服务注册和发现的文章. 作为服务中心的软件有很多,比如 etcd,consul,nacos,zookeeper 等都可以作为服务中心. ...
- SpringCloud实战之初级入门(二)— 服务注册与服务调用
目录 1.环境介绍 2.服务提供 2.1 创建工程 2.2 修改配置文件 2.3 修改启动文件 2.5 亲测注意事项 3.服务调用 3.1 创建工程 3.2 修改配置文件 3.3 修改启动文件 3.4 ...
- SpringCloud系列(一):Eureka 服务注册与服务发现
上一篇,我们介绍了服务注册中心,光有服务注册中心没有用,我们得发服务注册上去,得从它那边获取服务.下面我们注册一个服务到服务注册中心上去. 我们创建一个 hello-service 的 spring ...
- SpringCloud之eureka服务注册和服务发现
服务注册中心 :eureka-server 作用:服务注册中心提供服务注册功能 服务提供方:eureka-client 作用:注册服务到服务注册中心 服务注册中心 :eureka-server 创建 ...
- dubbo2.7.X版本带来的服务注册和服务调用方式改变
参考地址:https://www.cnblogs.com/alisystemsoftware/p/13064620.html 注册中心数据结构格式改变(service:接口服务,application ...
- Consul 服务注册与服务发现
上一篇:Mac OS.Ubuntu 安装及使用 Consul 1. 服务注册 对 Consul 进行服务注册之前,需要先部署一个服务站点,我们可以使用 ASP.NET Core 创建 Web 应用程序 ...
随机推荐
- SQL Server Connection Pooling (ADO.NET)
SQL Server Connection Pooling (ADO.NET) Connecting to a database server typically consists of severa ...
- Markdown 实现首行缩进
把输入法由半角改为全角. 两次空格之后就能够有两个汉字的缩进. 在开头的时候,先输入这个,然后紧跟着输入文本即可.分号也不要掉.
- php获取当前域名、主机、URL、端口、参数、网址、路径、代理等【转】
<?php //获取域名或主机地址 echo $_SERVER['HTTP_HOST']."<br />"; //获取网页地址 echo $_SERVER['PH ...
- redis_NoSql入门概述
一.为什么要使用Nosql 今天我们可以通过第三方平台(如:google,facebook)可以很容易的访问和抓取数据.用户的个人信息,社交网络,地理位置,用户生成的数据和用户操作日志已经成倍的增加. ...
- codevs 1058 合唱队形 2004年NOIP全国联赛提高组
1058 合唱队形 2004年NOIP全国联赛提高组 时间限制: 1 s 空间限制: 128000 KB 题目等级 : 黄金 Gold 题目描述 Description N位同学站成一排,音 ...
- ThinkPHP -- 去除URL中的index.php
原路径是 http://localhost/test/index.php/index/add 想获得的地址是 http://localhost/test/index/add 那么如何去掉index.p ...
- jquery datatables使用
引入相应css 和js <link href="http://cdn.datatables.net/1.10.5/css/jquery.dataTables.css" rel ...
- extjs grid数据改变后刷新的实现
做了一个编辑extjs grid记录的窗体,但更改数据后,怎么重新刷新grid让数据显示呢? 做了半天的尝试,其实到最后只需一句话,faint:-) this.store.reload(); 不用加任 ...
- 学习笔记:Tab Bar 控件使用详解
注意这里是:Tab Bar 不是Tab Bar Controller. Tab bar是继承UIView,所以可以添加到ViewController里.是View就可以add到另一个View上去.Ta ...
- HDU 4579 Random Walk (解方程组)
Random Walk Time Limit: 5000/2000 MS (Java/Others) Memory Limit: 65535/65536 K (Java/Others)Total ...