在上一章中讲到,Eureka很多的服务器配置项都来自于AWS。其中非常重要的:
Eureka实例是一个基础对象,它提供了诸如网络通信、数据同步,心跳等基本的网络通信方法。无论是Eureka Server还是Eureka Client,其都是一个Eureka Instance。
Eureka Client提供了服务注册、服务更新、服务地址等相关信息,并通过相关配置将当前服务注册至指定的Eureka Server上。 Eureka Server提供了服务注册表以及相关管理服务注册表的API,Eureka Server也是一个Eureka Client,通过这种方式Eureka Server可以将当前服务注册至其他的Eureka Server中去。两个Eureka Server通过增量更新的方式更新服务注册表。
127.0.0.1 peer1 127.0.0.1 peer2 复制代码
Hosts文件主要作用是定义IP地址和主机名的映射关系,是一个映射IP地址和主机名的规定。修改Hosts文件是为了模拟两台服务器,一台名为:peer1,一台名为:peer2。主机对应的IP地址都是本地网卡回环地址。
*** Tips: ***
spring:
application:
name: bruce-eureka-demo-server
---
spring:
profiles: peer1 # 指定profile=peer1
server:
port: 8761
eureka:
instance:
hostname: peer1 # 指定当profile=peer1时,主机名是peer1
client:
serviceUrl:
defaultZone: http://peer2:8762/eureka/ # 将自己注册到peer2这个Eureka上面去
---
spring:
profiles: peer2
server:
port: 8762
eureka:
instance:
hostname: peer2
client:
serviceUrl:
defaultZone: http://peer1:8761/eureka/
复制代码
*** Tips: ***
java -jar EurekaDemoServer-1.0-SNAPSHOT.jar --spring.profiles.active=peer2 复制代码
首先运行Peer2配置,即运行服务发现的根服务器。
再运行peer1配置:
java -jar EurekaDemoServer-1.0-SNAPSHOT.jar --spring.profiles.active=peer1 复制代码