hyperf 服务注册与发现之初识 consul
4066
0
0
阅读目录
什么是consul
我们在服务注册与发现一文中了解到consul是用来管理服务的。它是HashiCorp 公司使用 Go 语言开发且开源的分布式服务发现和配置管理系统。
Consul提供了支持面向服务的体系结构所需的一系列功能。包括服务发现,还包括丰富的运行状况检查,锁定,密钥/值,多数据中心联合,事件系统和ACL。
Consul 遵循CAP原则中的CP原则,保证了强一致性和分区容错性。它使用的是Raft算法,虽然保证了强一致性,但是可用性就相应下降了,例如服务注册的时间会稍长一些,因为 Consul 的 raft 协议要求必须过半数的节点都写入成功才认为注册成功 ;在leader挂掉了之后,重新选举出leader之前会导致Consul 服务不可用。
注:raft指的是Server 节点之间的数据一致性保证协议
consul我们会做重点介绍,我们不仅会介绍consul的使用,包括服务集群,源码分析也会详细的跟大家聊聊。在实际的服务中心的实现上,zk(zookeeper的简称)、consul、eurake、nacos等等都可以作为服务中心,虽然hyperf目前(v2.2)还只支持consul和nacos,但官方也提供了对其他服务中心的自定义支持。希望大家在学习consul的时候主要学习下其编程思想以及架构思想。
hyperf 引入consul之后,服务启动时,服务提供者会向consul服务中心注册,即是服务注册;消费者远程调用服务时,会向consul获取注册信息,且同时发
还有76%的精彩内容,购买继续阅读
- 评论区
共7条评论
登录
后发布评论