Eureka Server的使用


1. eureka組件

Eureka Server 和 Eureka Client

調用過程:

1. 服務提供者啟動時向服務注冊中心注冊自己的服務。

2. 服務消費者啟動時向服務注冊中心訂閱自己所需要的服務。

3. 注冊中心將服務提供者地址提供給消費者。

4. 服務消費者通過地址進行消費。

2. 注冊中心搭建

pom.xml

 

 1   <parent>
 2         <groupId>org.springframework.boot</groupId>
 3         <artifactId>spring-boot-starter-parent</artifactId>
 4         <version>2.0.2.RELEASE</version>
 5   </parent>
 6 
 7     <properties>
 8         <spring-cloud.version>Finchley.RELEASE</spring-cloud.version>
 9     </properties>
10 
11     <dependencies>
12         <dependency>
13             <groupId>org.projectlombok</groupId>
14             <artifactId>lombok</artifactId>
15             <version>1.16.18</version>
16         </dependency>
17         <dependency>
18             <groupId>org.springframework.cloud</groupId>
19             <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId>
20         </dependency>
21         <dependency>
22             <groupId>org.springframework.boot</groupId>
23             <artifactId>spring-boot-starter-test</artifactId>
24             <scope>test</scope>
25         </dependency>
26     </dependencies>
27 
28     <dependencyManagement>
29         <dependencies>
30             <dependency>
31                 <groupId>org.springframework.cloud</groupId>
32                 <artifactId>spring-cloud-dependencies</artifactId>
33                 <version>${spring-cloud.version}</version>
34                 <type>pom</type>
35                 <scope>import</scope>
36             </dependency>
37         </dependencies>
38     </dependencyManagement>
39 
40     <repositories>
41         <repository>
42             <id>spring-milestones</id>
43             <name>Spring Milestones</name>
44             <url>https://repo.spring.io/milestone</url>
45             <snapshots>
46                 <enabled>false</enabled>
47             </snapshots>
48         </repository>
49     </repositories>    

 

啟動類

 

1 @EnableEurekaServer
2 @SpringBootApplication
3 public class EurekaApplication {
5     public static void main(String[] args) {
6         SpringApplication.run(EurekaApplication.class, args);
7     }
8 }

 

application.yml

 

spring:
  application:
    name: ad-eureka #服務名

server:
  port: 8000

eureka:
  instance:
    hostname: localhost
  client:
    fetch-registry: false #是否從eureka獲取信息
    register-with-eureka: false #是否注冊到eureka(自身是不需要注冊到自己的)
    service-url:
      defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/

 

application.yml(關於兩兩注冊)

 

spring:
  application:
    name: ad-eureka
  profiles: server1
server:
  port: 8000
eureka:
  instance:
    hostname: server1
    prefer-ip-address: false
  client:
    service-url:
      defaultZone: http://server2:8001/eureka/,http://server3:8002/eureka/

---
spring:
  application:
    name: ad-eureka
  profiles: server2
server:
  port: 8001
eureka:
  instance:
    hostname: server2
    prefer-ip-address: false
  client:
    service-url:
      defaultZone: http://server1:8000/eureka/,http://server3:8002/eureka/

---
spring:
  application:
    name: ad-eureka
  profiles: server3
server:
  port: 8002
eureka:
  instance:
    hostname: server3
    prefer-ip-address: false
  client:
    service-url:
      defaultZone: http://server1:8000/eureka/,http://server2:8001/eureka/

 

當然,此時還得在C:\Windows\System32\drivers\etc\hosts文件中進行映射

127.0.0.1    server1
127.0.0.1    server2
127.0.0.1    server3

啟動后

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM