对于企业级的SOA框架来说,服务与服务间的解耦是一项巨大的难题,随着功能服务的不断增加,多服务间的相互调用频繁,很容易导致牵一发而动全身的情况。
这时候就应该进行服务治理,将服务之间的直接依赖转化为服务对服务中心的依赖。Spring Cloud 核心组件Eureka就是解决这类问题
1 如何在已有的springboot项目中引入springcloud eureka
<dependencies> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-eureka-server</artifactId> </dependency> </dependencies>
2 启动类注解
@SpringBootApplication
@EnableEurekaServer //声明这是一个Eureka Server服务
public class EurekaServerApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaServerApplication.class, args);
}
}
3 application.yml配置
server:
port: 8761 # 定义Eureka实例端口
eureka:
client:
registerWithEureka: true
fetchRegistry: true
serviceUrl:
defaultZone: http://localhost:8761/eureka/
至此 Eureka Server服务配置完成
其中:
eureka: client: registerWithEureka :表示是否将自己注册到Eureka Server中,默认是true
eureka: client: fetchRegistry:表示是否从Eureka Server获取注册信息,默认为true
eureka: client: serviceUrl: defaultZone :设置与Eureka Server交互的地址,查询服务和注册服务都依赖这个地址,多个地址逗号分隔。
最后在浏览器输入localhost:8761访问到如下页面 则配置成功