原创 Spring Cloud RestTemplate使用的三種方式

1、直接寫死url RestTemplate restTemplate = new RestTemplate(); String resp = restTemplate.getForObject("http://ip:port/orde

原创 Spring Cloud構建微服務架構:服務消費之Feign

通過前兩篇《Spring Cloud構建微服務架構:服務消費(基礎)》和《Spring Cloud構建微服務架構:服務消費(Ribbon)》,我們已經學會了在Spring Cloud中基本的服務調用方式。本文我們將繼續介紹Spring

原创 Spring Cloud源碼分析之Eureka

在看具體源碼前,我們先回顧一下之前我們所實現的內容,從而找一個合適的切入口去分析。首先,服務註冊中心、服務提供者、服務消費者這三個主要元素來說,後兩者(也就是Eureka客戶端)在整個運行機制中是大部分通信行爲的主動發起者,而註冊中心主要

原创 Spring Cloud構建微服務架構:服務消費之基礎

通過上一篇《Spring Cloud構建微服務架構:服務註冊與發現》,我們已經成功地將服務提供者:eureka-client或consul-client註冊到了Eureka服務註冊中心或Consul服務端上了,同時我們也通過Discov

原创 Spring Cloud構建微服務架構:服務消費之Ribbon

通過上一篇《Spring Cloud構建微服務架構:服務消費》,我們已經學會如何通過LoadBalancerClient接口來獲取某個服務的具體實例,並根據實例信息來發起服務接口消費請求。但是這樣的做法需要我們手工的去編寫服務選取、鏈接

原创 Spring Cloud源碼分析之Ribbon

在之前介紹使用Ribbon進行服務消費的時候,我們用到了RestTemplate,但是熟悉Spring的同學們是否產生過這樣的疑問:RestTemplate不是Spring自己就有的嗎?跟Ribbon的客戶端負載均衡又有什麼關係呢?下面在

原创 Spring Cloud構建微服務架構:Hystrix監控面板

在上一篇《服務容錯保護(hystrix斷路器)》的介紹中,我們提到斷路器是根據一段時間窗內的請求情況來判斷並操作斷路器的打開和關閉狀態的。而這些請求情況的指標信息都是HystrixCommand和HystrixObservableComm

原创 Spring Cloud構建微服務架構:Hystrix監控數據聚合

上一篇我們介紹了使用Hystrix Dashboard來展示Hystrix用於熔斷的各項度量指標。通過Hystrix Dashboard,我們可以方便的查看服務實例的綜合情況,比如:服務調用次數、服務調用延遲等。但是僅通過Hystrix

原创 Spring Cloud構建微服務架構:服務容錯保護之Hystrix斷路器

前言 在前兩篇《Spring Cloud構建微服務架構:服務容錯保護之Hystrix服務降級》和《Spring Cloud構建微服務架構:服務容錯保護之Hystrix依賴隔離》中,我們對Hystrix提供的服務降級和依賴隔離有了基本的認識

原创 Spring Cloud構建微服務架構:服務容錯保護之Hystrix服務降級

在微服務架構中,我們將系統拆分成了一個個的服務單元,各單元應用間通過服務註冊與訂閱的方式互相依賴。由於每個單元都在不同的進程中運行,依賴通過遠程調用的方式執行,這樣就有可能因爲網絡原因或是依賴服務自身問題出現調用故障或延遲,而這些問題會直

原创 Spring Cloud之RestTemplate和Feign的使用

介紹 在Spring cloud有兩種服務調用方式,一種是ribbon+restTemplate,另一種是feign,feign註解化更方便使用。 ribbon是一個負載均衡客戶端,可以很好的控制http和tcp的一些行爲。Feign默認

原创 Spring Cloud構建微服務架構:服務網關(基礎)

通過之前幾篇Spring Cloud中幾個核心組件的介紹,我們已經可以構建一個簡略的(不夠完善)微服務架構了。比如下圖所示: alt 我們使用Spring Cloud Netflix中的Eureka實現了服務註冊中心以及服務註冊與發現;而

原创 Spring Cloud構建微服務架構:服務容錯保護之Hystrix依賴隔離

前言 在上一篇《Spring Cloud構建微服務架構:服務容錯保護之Hystrix服務降級》中,我們已經體驗瞭如何使用@HystrixCommand來爲一個依賴資源定義服務降級邏輯。實現方式非常簡單,同時對於降級邏輯還能實現一些更加複雜

原创 java高級技術梳理

java高級技術梳理 內容 環境搭建 在這一階段,首先是安裝了虛擬機. 在安裝虛擬機過後,學習了以後,就開始安裝在虛擬機上安裝jdk, tomcat, mysql .,將這些軟件安裝好後,我們算是把虛擬機運行環境搭建完畢了. Linux環

原创 Spring Cloud Eureka配置文件說明

Eureka服務端: application.yml # eureka(最)簡單單點開發配置。支持yml與properties兩種,yml文件後綴必須爲yml,不能是yaml,否則找不到該文件,使用默認配置。 # yml文件大小寫敏感