springcloud-eureka服务注册中心

用一张图来认识以下:

上图简要描述了Eureka的基本架构,由3个角色组成:

1、Eureka Server  提供服务注册和发现
2、Service Provider  服务提供方  将自身服务注册到Eureka,从而使服务消费方能够找到
3、Service Consumer 服务消费方  从Eureka获取注册服务列表,从而能够消费服务

案例:

1 在pom.xml文件引入依赖jar包


		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter</artifactId>
			<version>2.0.2.RELEASE</version>
		</dependency>
		<dependency>
			<groupId>org.springframework.cloud</groupId>
			<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
			<version>2.0.2.RELEASE</version>
		</dependency>

2 配置文件

spring.application.name=spring-cloud-eureka
server.port=8000
eureka.client.register-with-eureka=false
eureka.client.fetch-registry=false
eureka.client.serviceUrl.defaultZone=http://localhost:${server.port}/eureka/

eureka.client.register-with-eureka :表示是否将自己注册到Eureka Server,默认为true。
eureka.client.fetch-registry :表示是否从Eureka Server获取注册信息,默认为true。
eureka.client.serviceUrl.defaultZone :设置与Eureka Server交互的地址,查询服务和注册服务都需要依赖这个地址。默认是http://localhost:8761/eureka ;多个地址可使用 , 分隔。

3 在启动类添加@EnableEurekaServer注解

@SpringBootApplication
@EnableEurekaServer
public class DemoApplication {
	public static void main(String[] args) {
		SpringApplication.run(DemoApplication.class, args);
	}
}

启动工程后,访问:http://localhost:8000/,可以看到下面的页面,其中还没有发现任何服务

集群注册中心:

eureka-server作为服务注册中心,若发生故障会导致严重事故。在实际中可能需要多台服务注册中心确保服务高可用

1 配置文件application.yml如下:

---
spring:
  application:
    name: spring-cloud-eureka
  profiles: peer1
server:
  port: 8000
eureka:
  instance:
    hostname: peer1
  client:
    serviceUrl:
      defaultZone: http://peer2:8001/eureka/,http://peer3:8002/eureka/
---
spring:
  application:
    name: spring-cloud-eureka
  profiles: peer2
server:
  port: 8001
eureka:
  instance:
    hostname: peer2
  client:
    serviceUrl:
      defaultZone: http://peer1:8000/eureka/,http://peer3:8002/eureka/
---
spring:
  application:
    name: spring-cloud-eureka
  profiles: peer3
server:
  port: 8002
eureka:
  instance:
    hostname: peer3
  client:
    serviceUrl:
      defaultZone: http://peer1:8000/eureka/,http://peer2:8001/eureka/

2 配置C:\Windows\System32\drivers\etc下的hosts文件:

127.0.0.1 peer1
127.0.0.1 peer2
127.0.0.1 peer3

3 将项目打成jar包 依次运行

java -jar demo-0.0.1-SNAPSHOT.jar  --spring.profiles.active=peer1
java -jar demo-0.0.1-SNAPSHOT.jar  --spring.profiles.active=peer2
java -jar demo-0.0.1-SNAPSHOT.jar  --spring.profiles.active=peer3

4 访问:http://localhost:8001/

猜你喜欢

转载自blog.csdn.net/qq_40693828/article/details/85158658