详解SpringCloud使用Consul做注册中心

网友投稿 568 2023-03-07

详解SpringCloud使用Consul做注册中心

详解SpringCloud使用Consul做注册中心

简介:

Consul 是一套开源的分布式服务发现和配置管理系统,由 HashiCorp 公司用 Go 语言开发。

Consul 支持健康检查,并允许 HTTP 和 DNS 协议调用 API 存储键值对.

命令行超级好用的虚拟机管理软件 vgrant 也是 HashiCorp 公司开发的产品.

一致性协议采用 Raft 算wkxXWrsae法,用来保证服务的高可用. 使用 GOSSIP 协议管理成员和广播消息, 并且支持 ,

Consul 提供了微服务中服务注册发现注册,微服务中的分布式配置中心,可以单独使用,也可以一块使用

ACL 访问控制.

Consul 的使用场景

docker 实例的注册与配置共享

coreos 实例的注册与配置共享

vitess 集群

SaaS 应用的配置共享

与 confd 服务集成,动态生成 nginx 和 haproxy 配置文件

Consul 的优势

使用 Raft 算法来保证一致性, 比复杂的 Paxos 算法更直接. 相比较而言, zookeeper 采用的是 Paxos, 而 etcd 使用的则是 Raft.

支持多数据中心,内外网的服务采用不同的端口进行监听。 多数据中心集群可以避免单数据中心的单点故障,而其部署则需要考虑网络延迟, 分片等情况等. zookeeper 和 etcd 均不提供多数据中心功能的支持.

支持健康检查. etcd 不提供此功能.

支持 http 和 dns 协议接口. zookeeper 的集成较为复杂, etcd 只支持 http 协议.

官方提供web管理界面, etcd 无此功能.

综合比较, Consul 作为服务注册和配置管理的新星, 比较值得关注和研究.

Consul 的角色

client: 客户端, 无状态, 将 HTTP 和 DNS 接口请求转发给局域网内的服务端集群.

server: 服务端, 保存配置信息, 高可用集群, 在局域网内与本地客户端通讯, 通过广域网与其他数据中心通讯. 每个数据中心的 server 数量推荐为 3 个或是 5 个.

安装 Consul:——》官网-https://consul.io/downloads

mac os x:

brew cask install consul

linux 64bit:

wget https://dl.bintray.com/mitchellh/consul/0.4.1_linux_amd64.zip

unzip 0.4.1_linux_amd64.zip

sudo mv consul /bin

当然win的也可以 我-的最新的

加压文件夹

解压完就一个.exe文件

启动:

在此文件夹下,打开cmd命令 输入consul wkxXWrsaeagent -dev

打开页面访问即可

搭建项目

pom依赖:

org.springframework.cloud

spring-cloud-starter-consul-discovery

配置文件 :yml

server:

port: 8083

spring:

application:

name: cloud-consul-provider

cloud:

consul:

host: localhost

port: 8500

discovery:

service-name: ${spring.application.name}

配置后启动项目

服务已经注册到Consul 当然Consul也可以做配置中心

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:移动快速开发(移动开发的三种方式)
下一篇:新媒体插件小程序(新媒体工具大全)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~