spring cloud 注册中心

做微服务,注册中心是少不了的,之前用Dubbo的时候用的是Zookeeper,Spring Cloud也有自己的注册中心——Eureka。

按照之前的文章《极简Spring Boot搭建、开发、部署》在http://start.spring.io 构建一个Spring Boot工程,dependencies选web、Eureka Server。

pom.xml:

重要配置如下:

1

2

3

4

5

代码&配置:

结构:

代码结构

启动类:

启动类

简单至极,就加上@EnableEurekaServer即可,没其他代码了。

application.yml:

配置文件

说明:

端口号就不解释了。

A, 可以不配置,在eureka的监控页面上有个environment,会显示test。

B, hostname也可以不配置,在D上直接写死即可,不过后面我们会配置Eureka集群,这里最好还是配上,当然不会是localhost了。

C, 因为我们这个是服务端,所以自己不会去注册自己。下面我们会写需要注册的服务,这两个必须是true。

D,可以写死。

直接启动,访问http://127.0.0.1:8864,会看到以下页面:

注意红框。

需要注册的服务,去http://start.spring.io 构建一个Spring Boot工程,dependencies选web、Eureka Discovery。

pom.xml:

与注册中心基本相同,区别如下:

代码&配置:

启动类

就加一个@EnableDiscoveryClient注解即可。

A, 服务名。

B, 需要向注册中心注册,且读取注册信息。

C, 注册中心的url。

先启动注册中心,再启动本服务,访问http://127.0.0.1:8864,监控页面如下:

已经注册进去了,其他服务就可以调用了。

还有一些配置,比如心跳发送间隔、注册中心多久没收到心跳就剔除服务等,大家可以自己查询API。

单节点的注册中心开发环境中还可以,生产环境就得上高可用了。

程序代码不需要改,但是要部署到不同的服务器或虚拟机或Docker上,IP、Hostname肯定不一样了。要么是打包之后修改配置文件,要么是配置好配置文件,在启动的时候指定。

规划:

先在三台服务器中修改hosts,把ip和hostname对应上。别忘了把防火墙中相应的端口打开。

配置文件:

修改application.yml,内容如下:

server2

server3

具体就不解释了,都看得懂。

启动&测试:

打包之后,分别上传到服务器中,使用以下命令启动:

java -jar eurekaserver-0.0.1-SNAPSHOT.jar --spring.profiles.active=eurekaserver1

java -jar eurekaserver-0.0.1-SNAPSHOT.jar --spring.profiles.active=eurekaserver2

java -jar eurekaserver-0.0.1-SNAPSHOT.jar --spring.profiles.active=eurekaserver3

在我们的Windows系统中,如果也配置了hosts,可以通过hostname:port来访问,如果没有,就直接访问ip地址。

三个监控页面如下:

server1

server2

server3

客户端配置:

只需要把defaultZone一个URL地址改成三个即可,用,分隔。

启动服务之后,可以刷新一下Eureka的三个监控页面,客户端已经注册进去了。


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值