Eureka注册中心
1、注册中心
导入依赖
<!--eureka-server-->
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
</dependency>
启动类注解
/**
不同点:@EnableEurekaClient只适用于Eureka作为注册中心,@EnableDiscoveryClient 可以是其他注册中心。
**/
// 声明为eurekaServer
@EnableEurekaServer
@SpringBootApplication
public class EurekaDemoApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaDemoApplication.class, args);
}
}
配置注册中心
# eureka 注册中心配置
eureka:
instance:
hostname: localhost
client:
register-with-eureka: false
fetch-registry: false
service-url:
defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka
2、服务注册
启动类
@SpringBootApplication
// 启用Eureka客户端
@EnableEurekaClient
// 启用服务发现
@EnableDiscoveryClient
public class MalldemoApplication {
public static void main(String[] args) {
SpringApplication.run(MalldemoApplication.class, args);
}
}
配置
server:
port: 8081
eureka:
client:
service-url:
# 服务注册中心地址
defaultZone: http://localhost:8090/eureka/
# 注册实例
instance:
prefer-ip-address: true
instance-id: ${spring.cloud.client.ip-address}:${server.port}
appname: mall-service-provider
# 注册主机name
hostname: mall-service-provider
spring:
cloud:
discovery:
enabled: true
application:
name: mall-service-provider
3、消费者
配置
server:
port: 8082
eureka:
client:
service-url:
# 服务注册中心地址
defaultZone: http://localhost:8090/eureka/
# feign demo 是消费者,只拉取服务,如果置为false 会找不到服务
fetch-registry: true
# 不注册到注册中心
register-with-eureka: false
spring:
cloud:
discovery:
enabled: true
application:
name: mall-consumer