您好,登錄后才能下訂單哦!
這期內容當中小編將會給大家帶來有關怎么在SpringCloud項目中使用Eureka,文章內容豐富且以專業的角度為大家分析和敘述,閱讀完這篇文章希望大家可以有所收獲。
Eureka是Netfilx開源的一個用來實現微服務的注冊與發現的組件。它包含Server和Client兩部分。
例如目前有兩個服務分別為服務A,服務B,我們可以在服務A調用服務B的接口地址完成調用,但是當服務間的調用關系復雜起來的時候,比如服務A還需要調用服務CDE,那么服務A需要維護它調用的所有服務的地址,一旦地址的變更都需要手動去修改。
當使用了Eureka這樣的服務治理框架后,服務ABCDE可以一起注冊到EurekaServer服務上,直接通過服務名來調用其他服務。
通過Eureka,實現消費者服務80通過服務名調用服務提供者8001的接口。
cloud-eureka-server7001關鍵代碼
引入server依賴:
<!--eureka-server--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-server</artifactId> </dependency>
server端配置:
eureka: instance: hostname: localhost client: register-with-eureka: false #false表示不向注冊中心注冊自己。 fetch-registry: false #false表示自己端就是注冊中心,我的職責就是維護服務實例,并不需要去檢索服務 service-url: #集群指向其它eureka defaultZone: http://eureka7002.com:7002/eureka/ #單機就是7001自己 defaultZone: http://${eureka.instance.hostname}:${server.port}/eureka/
啟動類注解:
@SpringBootApplication @EnableEurekaServer public class EurekaMain7001 { public static void main(String[] args) { SpringApplication.run(EurekaMain7001.class, args); } }
cloud-provider-payment8001關鍵代碼
引入client依賴:
<!--eureka-client--> <dependency> <groupId>org.springframework.cloud</groupId> <artifactId>spring-cloud-starter-netflix-eureka-client</artifactId> </dependency>
client端配置:
eureka: client: #表示是否將自己注冊進EurekaServer默認為true。 register-with-eureka: true #是否從EurekaServer抓取已有的注冊信息,默認為true。單節點無所謂,集群必須設置為true才能配合ribbon使用負載均衡 fetchRegistry: true service-url: defaultZone: http://localhost:7001/eureka
啟動類注解:
@SpringBootApplication @EnableEurekaClient public class PaymentMain8001 { public static void main(String[] args) { SpringApplication.run(PaymentMain8001.class, args); } }
cloud-consumer-order80
關鍵代碼同服務提供者
通過服務名調用其他服務的接口(RestTemple記得要加@LoadBalanced,否則找不到服務名):
public static final String PAYMENT_URL = "http://CLOUD-PAYMENT-SERVICE"; @GetMapping("/consumer/payment/get/{id}") public CommonResult<Payment> getPayment(@PathVariable("id") Long id) { return restTemplate.getForObject(PAYMENT_URL+"/payment/get/"+id,CommonResult.class); }
如果使用Eureka集群
EurekaServer配置
#集群指向其它eureka defaultZone: http://eureka7002.com:7002/eureka/
服務Cient配置
# 集群 #defaultZone: http://eureka7001.com:7001/eureka,http://eureka7002.com:7002/eureka #
上述就是小編為大家分享的怎么在SpringCloud項目中使用Eureka了,如果剛好有類似的疑惑,不妨參照上述分析進行理解。如果想知道更多相關知識,歡迎關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。