为什么要使用集群(高可用)?
在生产环境中为了防止服务器挂掉的风险,我们可以采用Eureka集群(高可用)的方式来很好的应对这种情况。
下面我们就来模拟下高可用
首先配置Eureka中的application.yml
spring:
application:
name: EUREKA-HA
security:
user:
name: admin
password: 123456
---
server:
port: 8761
tomcat:
uri-encoding: UTF-8
spring:
profiles: peer1
eureka:
instance:
hostname: peer1
client:
serviceUrl:
defaultZone: http://admin:123456@peer2:8762/eureka,http://admin:123456@peer3:8763/eureka
---
server:
port: 8762
tomcat:
uri-encoding: UTF-8
spring:
profiles: peer2
eureka:
instance:
hostname: peer2
client:
serviceUrl:
defaultZone: http://admin:123456@peer1:8761/eureka,http://admin:123456@peer3:8763/eureka
---
server:
port: 8763
tomcat:
uri-encoding: UTF-8
spring:
profiles: peer3
eureka:
instance:
hostname: peer3
client:
serviceUrl:
defaultZone: http://admin:123456@peer1:8761/eureka,http://admin:123456@peer2:8762/eureka
微服务中的application.yml
server:
port: 7901
spring:
jpa:
generate-ddl: false
show-sql: true
hibernate:
ddl-auto: none
datasource:
platform: h2
schema: classpath:schema.sql
data: classpath:data.sql
application:
name: microservice-provider-user
eureka:
client:
serviceUrl:
defaultZone: http://admin:123456@peer1:8761/eureka,http://admin:123456@peer2:8762/eureka
instance:
prefer-ip-address: true
instance-id: ${spring.application.name}:${spring.application.instance_id:${server.port}}
C:\Windows\System32\drivers\etc\hosts文件中添加hostname
127.0.0.1 peer1 peer2 peer3
在调式配置中启动Eureka中的peer1 peer2 peer3,再启动微服务后可看结果