1.Eureka集群原理说明
解决办法: 搭建Eureka注册中心集群,实现负载均衡+故障容错
2.Eureka集群环境构建步骤
2.1.新建cloud-eureka-server7002
参考cloud-eureka-server7001
2.2.改POM
写YMl(以前单机)
7001
server:
port: 7001
eureka:
instance:
# eureka服务端的实例名称
hostname: eureka7001.com
client:
# false表示不向注册中心注册自己
register-with-eureka: false
# false表示自己端就是注册中心,我的职责就是维护服务实例,并不需要检索服务
fetch-registry: false
service-url:
# 设置与Eureka Server交互的地址查询服务和注册服务都需要依赖这个地址
defaultZone: http://eureka7002.com:7002/eureka/
7002
server:
port: 7002
eureka:
instance:
hostname: eureka7002.com
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://eureka7001.com:7001/eureka/
两台服务器相互注册
2.3.改host
找到C:\Windows\System32\drivers\etc
路径下的hosts文件
修改映射配置添加hosts文件
127.0.0.1 eureka7001.com
127.0.0.1 eureka7002.com
刷新hosts文件
ipconfig /flushdns
2.4.启动测试
3.将支付服务8001微服务发布到上面2台Eureka集群配置中
eureka:
client:
service-url:
# 集群版
defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
# 是否从eureka中抓取自己的注册信息,默认值为true,单击无所谓,集群必须设置为true,才可以使用rebbon进行负载均衡
fetch-registry: true
# 是否将自己注册到eurekaService
register-with-eureka: true
4.将订单服务80微服务发布到上面2台Eureka集群配置中
server:
port: 80
spring:
application:
name: cloud-comsumer-order
eureka:
client:
service-url:
# 集群版
defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka
5.测试
先要启动EurekaServer,7001/7002服务
再要启动服务提供者provider,8001
再要启动消费者,80
测试地址:
http://localhost/consumer/payment/selectOne/36