摘要:在服務注冊服務提供者這一篇可能學習了這么開發一個服務提供者,在生成上服務提供者通常是部署在內網上,即是服務提供者所在的服務器是與互聯網完全隔離的。服務消費者本質上也是一個。
在《服務注冊&服務提供者》這一篇可能學習了這么開發一個服務提供者,在生成上服務提供者通常是部署在內網上,即是服務提供者所在的服務器是與互聯網完全隔離的。這篇說下服務發現(服務消費者),通常服務消費者是部署在與互聯網聯通的服務器上,提供restful接口給H5和App調用。
服務消費者 :Service Consumer本質上也是一個Eureka Client。它啟動后會從Eureka Server上獲取所有實例的注冊信息,包括IP地址、端口等,并緩存到本地。這些信息默認每30秒更新一次。如果與Eureka Server通信中斷或者Eureka Server宕機,Service Consumer仍然可以通過本地緩存與Service Provider通信。
1、 新建項目sc-eureka-client-consumer-ribbon,對用的pom.xml文件
4.0.0 spring-cloud sc-eureka-client-consumer-ribbon 0.0.1-SNAPSHOT jar sc-eureka-client-consumer-ribbon http://maven.apache.org org.springframework.boot spring-boot-starter-parent 2.0.4.RELEASE org.springframework.cloud spring-cloud-dependencies Finchley.RELEASE pom UTF-8 1.8 1.8 org.springframework.cloud spring-cloud-starter-netflix-eureka-client 2.0.1.RELEASE org.springframework.cloud spring-cloud-starter-netflix-ribbon 2.0.1.RELEASE org.springframework.boot spring-boot-starter-web 2.0.4.RELEASE
備注:spring cloud 2.x推薦使用spring-cloud-starter-netflix-ribbon,而且spring-cloud-starter-ribbon已經被標志為過期
2、 新建類ConsumerApplication.java,spring boot啟動類
package sc.consumer; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cloud.netflix.eureka.EnableEurekaClient; @SpringBootApplication @EnableEurekaClient public class ConsumerApplication { public static void main(String[] args) { SpringApplication.run(ConsumerApplication.class, args); } }
3、 創建類RestTemplateConfig.java,該類是一個配置類,主要返回org.springframework.web.client.RestTemplate對象
package sc.consumer; import org.springframework.cloud.client.loadbalancer.LoadBalanced; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.web.client.RestTemplate; @Configuration public class RestTemplateConfig { @Bean @LoadBalanced public RestTemplate getRestTemplate(){ return new RestTemplate(); } }
4、 創建配置文件bootstrap.yml和application.yml;具體內容參考源碼
5、 其他類接口如下
6、 啟動注冊中心sc-eureka-server和服務提供者sc-eureka-client-provider,具體請參考《eureka注冊中心單機》和《服務注冊&服務提供者》
7、 啟動服務消費者sc-eureka-client-consumer-ribbon,并驗證是否啟動成功
也可以查看日志是否有沒有報錯
8、 訪問相關接口
查詢:
http://127.0.0.1:5600/cli/user/getUser/4
列表:
http://127.0.0.1:5600/cli/user/listUser
添加:
http://127.0.0.1:5600/cli/user/addUser
更新:
http://127.0.0.1:5600/cli/user/updateUser
刪除:
http://127.0.0.1:5600/cli/user/deleteUser/6
https://gitee.com/hjj520/spring-cloud-2.x/tree/master/sc-eureka-client-consumer-ribbon
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/77777.html
摘要:公眾號樂園的中提供了兩個組件實現軟負載均衡調用,分別是和。是基于和的客戶端負載工具,它是基于實現的,它可以在客戶端配置服務端列表,然后輪詢請求以實現均衡負載。 公眾號:java樂園 spring cloud的Netflix中提供了兩個組件實現軟負載均衡調用,分別是Ribbon和Feign。上一篇和大家一起學習了Ribbon。Ribbon :Spring Cloud Ribbon是基于H...
摘要:在服務架構中,業務都會被拆分成一個獨立的服務,服務與服務的通訊是基于的。配置文件如下在工程的啟動類中通過向服務中心注冊并且注冊了一個通過注冊表明,這個是負載均衡的。 轉載請標明出處: http://blog.csdn.net/forezp/a...本文出自方志朋的博客 在上一篇文章,講了服務的注冊和發現。在服務架構中,業務都會被拆分成一個獨立的服務,服務與服務的通訊是基于http re...
摘要:服務消費者可以使用多種模型來發現服務。客戶端將定期與服務發現層進行通信,并刷新服務實例的緩存。為了達成目的,我們將要學習使用個不同的客戶端庫,服務消費者可以使用它們來和進行交互。 本篇代碼存放于:github 一、服務發現架構 ??服務發現架構通常具有下面 4 個概念: 服務注冊:服務如何使用服務發現代理進行注冊? 服務地址的客戶端查找:服務客戶端查找服務信息的方法是什么? 信息共享...
摘要:服務續約在服務注冊完成之后,服務提供者需要維護一個心跳來告知注冊中心服務實例處于正常運行狀態中,防止注冊中心將正常的服務實例剔除出注冊中心。 Spring Cloud Eureka 目錄 前言 構建服務注冊中心 服務注冊與發現 Eureka的基礎架構 Eureka的服務治理機制 Eureka的配置 代碼地址 前言 服務治理 ?隨著微服務應用的不斷增加,靜態配置會越來越難以維護,并且...
摘要:和二級緩存影響狀態更新,縮短這兩個定時任務周期可減少滯后時間,例如配置更新周期更新周期服務提供者保證服務正常下線。服務提供者延遲下線。 引言 Eureka是Netflix開源的、用于實現服務注冊和發現的服務。Spring Cloud Eureka基于Eureka進行二次封裝,增加了更人性化的UI,使用更為方便。但是由于Eureka本身存在較多緩存,服務狀態更新滯后,最常見的狀況是:服務...
閱讀 3131·2021-10-12 10:11
閱讀 1835·2021-08-16 10:59
閱讀 2844·2019-08-30 15:55
閱讀 1222·2019-08-30 14:19
閱讀 2029·2019-08-29 17:03
閱讀 2461·2019-08-29 16:28
閱讀 3212·2019-08-26 13:47
閱讀 2879·2019-08-26 13:36