【單機版】
pom文件:
<dependency>
<groupId>org.springframework.cloud</groupId>
<artifactId>spring-cloud-starter-netflix-eureka-client</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-web</artifactId>
</dependency>
啟動類:
@SpringBootApplication
@EnableEurekaClient //啟用 eureka client 相關(guān)默認配置
public class EurekaClientApplication {
public static void main(String[] args) {
SpringApplication.run(EurekaClientApplication.class, args);
}
}
控制器(ps:其實沒啥用):
@RestController
public class EurekaClientController {
@Value("${server.port}")
private String port;
/**
* 提供restful服務(wù),返回訪問URL
*
* @param request
* @return
*/
@RequestMapping("/info")
public String info(HttpServletRequest request) {
return request.getScheme() + "://" + request.getServerName() + ":" + request.getServerPort() + request.getServletPath();
}
}
配置文件:application.yml
server:
port: 52601
spring:
application:
name: eureka-client
eureka:
instance:
hostname: localhost
lease-renewal-interval-in-seconds: 5 #表示Eureka Client間隔多久去拉取服務(wù)注冊信息,默認30秒,如果要迅速獲取服務(wù)注冊狀態(tài),可以縮小該值
lease-expiration-duration-in-seconds: 10 # 表示eureka server至上一次收到client的心跳之后,等待下一次心跳的超時時間,在這個時間內(nèi)若沒收到下一次心跳,則將移除該instance。# 默認為90秒 # 如果該值太大,則很可能將流量轉(zhuǎn)發(fā)過去的時候,該instance已經(jīng)不存活了。# 如果該值設(shè)置太小了,則instance則很可能因為臨時的網(wǎng)絡(luò)抖動而被摘除掉。# 該值必須應(yīng)該大于 leaseRenewalIntervalInSeconds
client:
service-url:
defaultZone: http://localhost:8080/eureka/,http://localhost:8081/eureka/,http://localhost:8082/eureka/
啟動服務(wù),訪問路徑http://localhost:52601/info

為保證服務(wù)高可用,你懂得,搭建集群:【服務(wù)提供者】
application-client1.yml
application-client2.yml
application-client3.yml
記得修改server.port
然后配置服務(wù),啟動服務(wù)

查看服務(wù)注冊中心:

三個服務(wù)成功注冊到 服務(wù)中心,名字均為 EUREKA-CLIENT
(ps:配置文件 spring.application.name 是啥,這里顯示就是啥, )
集群完畢!!!