1. 程式人生 > >Spring cloud系列教程第十篇- Spring cloud整合Eureka總結篇

Spring cloud系列教程第十篇- Spring cloud整合Eureka總結篇

Spring cloud系列教程第十篇- Spring cloud整合Eureka總結篇

本文主要內容:

1:spring cloud整合Eureka總結

本文是由凱哥(凱哥Java:kagejava)釋出的《spring cloud系列》教程的總第十篇:

本文是幾個維度中的第一個維度:註冊與發現維度配置中心管理之Eureka相關教程第七篇-Spring cloud整合Eureka總結篇。

一:spring cloud整合Eureka總結

我們來回顧下到目前為止我們所學的知識:

 

我們先學習了微服務架構的入門知識:

微服務的介紹;spring cloud是什麼?簡單一句話:spring cloud是分散式微服務一站式解決方案。裡面集成了很多優秀的專案,讓我們從以下幾個維度很好的來管理、治理我們的微服務;

接著我們介紹了分散式體系常見的幾個維度:

服務註冊與發現;服務呼叫;服務熔斷;負載均衡;服務降級一級服務訊息佇列。這幾個維度來治理的。如下圖:

接著我們介紹了在2020年升級之後,每個維度使用的技術。如下圖:

 

具體詳見《spring cloud系列教程第一篇-介紹》在這篇文章中凱哥做了詳細的介紹

講完微服務架構後,接著我們馬上就來進行程式碼操作了。凱哥用了兩篇文章詳細的圖文介紹了怎麼從零搭建maven的父子專案。具體步驟可以詳見:《Spring cloud系列教程第二篇-支付專案父工程圖文搭建》和《Spring cloud系列教程第三篇-子專案payment專案圖文搭建》這兩篇文章。

該有的基礎環境搭建完成之後,我們就開始講解第一個維度:服務註冊中心所使用到的技術中的第一個也是已經停更的技術:Eureka。

在講解Eureka之前,我們講解了什麼是服務治理?什麼是服務註冊與發現(PS:這個要理解起來不是很好理解的,但是在後面,凱哥又帶著大家更深入的理解了)?最後講解了Eureka的兩個元件:EurekaServer和EurekaClient這兩個。更詳細的內容詳見:《spring cloud系列教程第四篇-Eureka基礎知識》。在這篇文章中,凱哥也做了詳細的介紹。

接下來,就開始了我們的Spring cloud整合Eureka了。先講解了單機版的整合。

Eureka Server端需要引入的jar是:

 

 

在啟動類上要新增啟用eureka服務的註解:@EnableEurekaServer

接著我們修改了服務端的配置。步驟類似:修改pom,修改yml配置檔案,修改主啟動類。

詳細步驟見:《spring cloud系列教程第五篇-Eureka單機版》這篇文章中做了詳細的圖文介紹及相關程式碼在git上面的版本號。

接著我們學習了Eureka叢集版搭建,註冊中心叢集搭建的核心:互相註冊,相互守望。即:7001註冊中心註冊到7002註冊中心上,7002註冊中心同樣註冊到7001的註冊中心上去。這樣,互相註冊,相互守望。

 

同時,我們還修改了客戶端怎麼註冊到叢集中。詳細介紹見:《spring cloud系列教程第六篇-Eureka叢集版》。

然後我們講解了客戶端叢集搭建及負載均衡配置,這裡是重點:在服務的消費者order80專案中,rest呼叫的時候字首使用的是註冊中心的別名,然後在獲取RestTemplate的配置類中使用了@LoadBalance註解來實現負載均衡的。然後通過這個負載均衡,我們再次理解了服務的註冊與發現的概念。負載均衡的詳細配置過程見:《spring cloud系列教程第七篇-服務提供者叢集環境搭建及負載均衡》。在這篇文章中,凱哥做了詳細圖文介紹。

接著凱哥又介紹瞭如何修改actuator微服務資訊完善:修改頁面顯示主機名稱和IP資訊以及如何通過程式碼獲取當前註冊中心的服務列表及每個服務的例項資訊。詳見:《spring cloud系列教程第八篇-修改服務名稱和獲取註冊中心註冊者資訊》

最後,我們詳細講解了Eureka的自我保護機制及如果修改自我保護機制。步驟詳見:《spring cloud系列教程第九篇-Eureka自我保護機制》

通過以上幾篇文章的學習,我們把第一個維度:服務註冊中心之Eureka相關學習完成了。接下來,我們將要學習Zookeeper相關的。最後我們再看回顧下面這張圖:

 

上圖中的相關知識,我們都會一一講解到的。歡迎大家繼續學習。

相關推薦

Spring Cloud系列教程 | Spring Cloud與Kubernetes的整合

推薦 Spring Cloud 視訊: Spring Cloud與Kubernetes的整合      Spring Cloud提供了專門的spring-cloud-kubernetes專案與k8s整合,儘管k8s提供了服務註冊和發現等功能與Spring cl

Spring Cloud系列教程 | Spring Cloud Config Server和Spring Cloud Bus以及Kafka和資料庫動態重新整理配置

推薦 Spring Cloud 視訊: Spring Cloud Config Server和Spring Cloud Bus以及Kafka和資料庫動態重新整理配置     Spring cloud config server如果不結合Spring cloud

Spring cloud系列教程- Spring cloud整合Eureka總結

Spring cloud系列教程第十篇- Spring cloud整合Eureka總結篇 本文主要內容: 1:spring cloud整合Eureka總結 本文是由凱哥(凱哥Java:kagejava)釋出的《spring cloud系列》教程的總第十篇: 本文是幾個維度中的第一個維度:註冊與發現維度配置中心

Spring Boot2 系列教程(二四)Spring Boot 整合 Jpa

Spring Boot 中的資料持久化方案前面給大夥介紹了兩種了,一個是 JdbcTemplate,還有一個 MyBatis,JdbcTemplate 配置簡單,使用也簡單,但是功能也非常有限,MyBatis 則比較靈活,功能也很強大,據我所知,公司採用 MyBatis 做資料持久化的相當多,但是 MyBat

Spring Boot2 系列教程(二五)Spring Boot 整合 Jpa 多資料來源

本文是 Spring Boot 整合資料持久化方案的最後一篇,主要和大夥來聊聊 Spring Boot 整合 Jpa 多資料來源問題。在 Spring Boot 整合JbdcTemplate 多資料來源、Spring Boot 整合 MyBatis 多資料來源以及 Spring Boot 整合 Jpa 多資料

Spring Boot2 系列教程(二六)Spring Boot 整合 Redis

在 Redis 出現之前,我們的快取框架各種各樣,有了 Redis ,快取方案基本上都統一了,關於 Redis,鬆哥之前有一個系列教程,尚不瞭解 Redis 的小夥伴可以參考這個教程: Redis 教程合集 使用 Java 操作 Redis 的方案很多,Jedis 是目前較為流行的一種方案,除了 Jedi

Spring Boot2 系列教程(二八)Spring Boot 整合 Session 共享

這篇文章是鬆哥的原創,但是在第一次釋出的時候,忘了標記原創,結果被好多號轉發,導致我後來整理的時候自己沒法標記原創了。寫了幾百篇原創技術乾貨了,有一兩篇忘記標記原創進而造成的一點點小小損失也能接受,不過還是要和小夥伴們說明一下。 在傳統的單服務架構中,一般來說,只有一個伺服器,那麼不存在 Session

Spring Boot2 系列教程(二九)Spring Boot 整合 Redis

經過 Spring Boot 的整合封裝與自動化配置,在 Spring Boot 中整合Redis 已經變得非常容易了,開發者只需要引入 Spring Data Redis 依賴,然後簡單配下 redis 的基本資訊,系統就會提供一個 RedisTemplate 供開發者使用,但是今天鬆哥想和大夥聊的不是這種

Spring Boot2 系列教程(三一)Spring Boot 構建 RESTful 風格應用

RESTful ,到現在相信已經沒人不知道這個東西了吧!關於 RESTful 的概念,我這裡就不做過多介紹了,傳統的 Struts 對 RESTful 支援不夠友好 ,但是 SpringMVC 對於 RESTful 提供了很好的支援,常見的相關注解有: @RestController @GetMapping

Spring Cloud系列教程 | :Eurake的自我保護機制

Eurake的自我保護機制     從CAP定理角度看,Eureka是一個AP系統,以高可用性為主,而zookeeper則是CP,以高一致性為主,所以如果使用ZK在服務發現和註冊方面,可用服務資訊雖然很及時,但是會出現不可用情形,造成無法克服的生產事故。Eure

Spring Boot 基礎系列教程 | :使用Spring-data-jpa簡化資料訪問層(推薦)

推薦 Spring Boot/Cloud 視訊: Spring Boot中使用Spring-data-jpa讓資料訪問更簡單、更優雅 在上一篇Spring中使用JdbcTemplate訪問資料庫 中介紹了一種基本的資料訪問方式,結合構建RESTful API和

Spring Boot 基礎系列教程 | 整合MyBatis

推薦 Spring Boot/Cloud 視訊: 最近專案原因可能會繼續開始使用MyBatis,已經習慣於spring-data的風格,再回頭看xml的對映配置總覺得不是特別舒服,介面定義與對映離散在不同檔案中,使得閱讀起來並不是特別方便。 Spring中整合

Spring Boot 基礎系列教程 | :使用Flyway來管理資料庫版本

推薦 Spring Boot/Cloud 視訊: 如果沒有讀過上面內容的讀者,有興趣的可以一閱。在前面的使用JdbcTemplate一文中,主要通過spring提供的JdbcTemplate實現對使用者表的增刪改查操作。在實現這個例子的時候,我們事先在MySQ

Spring Cloud系列教程 | Spring Cloud Zuul作為API閘道器實現請求路由轉發教程

推薦 Spring Cloud 視訊: Spring Cloud Zuul作為API閘道器實現請求路由轉發教程      當我們的架構實現前後端分離以後,前端和後端之間互動就是通過API閘道器進行,API閘道器兩個職責: 1.設計上的適配層,或稱Facade模

Spring Cloud系列教程 | :使用Spring Cloud Zuul實現過濾器或攔截器功能案例

推薦 Spring Cloud 視訊: 使用Spring Cloud Zuul實現過濾器或攔截器功能案例   Spring Cloud的API閘道器不但可以實現類似NGINX+Lua強大的路由分發,實現動靜頁面的分流,更重要可以實現對所有發往後端微服務請求的攔

Spring Cloud系列教程 | Eureka心跳健康檢查機制

推薦 Spring Cloud 視訊: Eureka心跳健康檢查機制 執行階段執行健康檢查的目的是為了從Eureka伺服器登錄檔中識別並刪除不可訪問的微服務,Eureka 伺服器並不是向客戶端傳送心跳請求,而是反過來,Eureka 客戶端將心跳傳送到Eurek

spring cloud系列教程-Eureka基礎知識

通過前三篇文章學習,我們搭建好了兩個微服務工程。即:order80和payment8001這兩個服務。有了這兩個基礎的框架之後,我們將要開始往裡面新增東西了。還記得分散式架構的幾個維度嗎?我們要通過一個一個維度來講解每個知識點。如下圖:   任何一個分散式或者是微服務都會需要一個服務註冊中心。用

spring cloud系列教程-Eureka叢集版

spring cloud系列教程第六篇-Eureka叢集版 本文主要內容: 本文來源:本文由凱哥Java(kaigejava)釋出在部落格園部落格的。轉載請註明 1:Eureka執行步驟理解 2:叢集原理 3:Eureka叢集搭建 4:修改payment和order專案註冊到叢集中 本文是由凱哥(凱哥Java

spring cloud系列教程-修改服務名稱及獲取註冊中心註冊者的資訊

spring cloud系列教程第八篇-修改服務名稱及獲取註冊中心註冊者的資訊 本文主要內容: 1:管理頁面主機名及訪問ip資訊提示修改 2:獲取當前註冊中心的服務列表及每個服務對於的服務提供者列表 本文是由凱哥(凱哥Java:kagejava)釋出的《spring cloud系列》教程的總第八篇:《修改服務

Spring Cloud系列教程-Eureka自我保護機制

Spring Cloud系列教程第九篇-Eureka自我保護機制 本文主要內容: 1:自我保護介紹 2:導致原因分析 3:怎麼禁止自我保護   本文是由凱哥(凱哥Java:kagejava)釋出的《spring cloud系列》教程的總第九篇: 本文是幾個維度中的第一個維度:註冊與發現維度配置中