F版本SpringCloud 2—什麼是SpringCloud?SpringCloud版本選擇

来源:https://www.cnblogs.com/bingyang-py/archive/2020/03/25/12570764.html

引言:搭建微服務架構就像是買電腦,使用SpringCloud就是在買品牌機。 前言 昂,美好的天氣里,不想直接說技術,給小伙伴萌看看傍晚的天空吧。 —— 能找到天上的北極星嗎? 上一篇文章中,通過一個簡單的小故事,輕鬆愉快的講解了架構的演變,以及為啥會有微服務,什麼是微服務。不過在最後留下了一個小疑 ...


引言:搭建微服務架構就像是買電腦,使用SpringCloud就是在買品牌機。

前言

昂,美好的天氣里,不想直接說技術,給小伙伴萌看看傍晚的天空吧。

—— 能找到天上的北極星嗎?

上一篇文章中,通過一個簡單的小故事,輕鬆愉快的講解了架構的演變,以及為啥會有微服務,什麼是微服務。不過在最後留下了一個小疑問:將架構設計為微服務需要一整套技術,解決服務調用,服務治理,服務監控等問題。

那麼這些技術怎麼來呢?

答案就是:SpringCloud。

本文就會詳細講解

  • 什麼是SpringCloud
  • SpringCloud和SpringBoot的關係
  • SpringCloud版本選擇

什麼是SpringCloud

引言:搭建微服務架構就像是買電腦,使用SpringCloud就是在買品牌機。

SpringCloud,基於SpringBoot提供了一套微服務解決方案,包括服務註冊與發現,配置中心,全鏈路監控,服務網關,負載均衡,熔斷器等組件,除了基於NetFlix的開源組件做高度抽象封裝之外,還有一些選型中立的開源組件。

NetFlix 是美國的一個線上視頻網站,微服務業的翹楚,他是公認的大規模生產級微服務的傑出實踐者,NetFlix的開源組件已經在他大規模分散式微服務環境中經過多年的生產實戰驗證,因此spring cloud中很多組件都是基於NetFlix組件的封裝

在上篇文章中我們講到微服務是一套技術的合集,這些技術裡面有服務調用技術,負載均衡技術,網關技術等等大大小小十幾個技術。

那麼問題來了?在開發中,我們怎麼才能找到這樣一整套技術呢?

第一種方案:就是自己需要什麼找什麼技術,但是這樣會有一個問題,技術和技術之間往往都會有一些相容性的問題,要解決這些問題,需要很強的技術示例,中小型企業一般沒有這樣的實力。

第二種方案:一些有實力的公司會自己尋找一整套技術,並且做一些封裝和整合,然後開源讓大家使用。SpringCloud就是這樣的技術,SpringCloud是官方封裝好的一整套分散式微服務的技術解決方案,我們也稱之為微服務全家桶。

舉個通俗的例子:開發微服務相當於買一臺電腦

  1. 自己找微服務的技術相當於自己組裝電腦,需要自己選配零部件,並且做組裝整合,一般人搞不定。
  2. 使用SpringCloud相當於直接買了一個聯想的電腦,買品牌機,廠家會把CPU 顯卡等等都幫你配置好了,買來就能用。

SpringCloud包含的技術:

.....等一二十個技術,網址:https://www.springcloud.cc/

SpringCloud 和 SpringBoot的關係

用過SpringBoot的小伙伴都知道,SpringBoot開發之所以方便快捷,就是因為SpringBoot自動配置可以讓我們在開發的時候不寫基本的配置,通過完美的封裝讓應用可以做到一鍵啟動和部署,而SpringCloud多個技術整合,最複雜的過程往往是配置。

所以SpringCloud選擇SpringBoot作為技術底層,對目前各家公司開發的比較成熟、經得起實際考驗的服務框架組合起來,進行二次封裝,屏蔽掉了複雜的配置和實現原理。讓我們使用SpringCloud像使用SpringBoot一樣的簡單。

SpringCloud和SpringBoot的版本選擇

關於SpringCloud和SpringBoot的版本選擇問題,可以見官網:https://spring.io/projects/spring-cloud/

我們選擇的是 Finchley 版本的SpringCloud,SpringBoot的版本就要選擇 2.0.X。

解釋一下 SpringCloud 版本號:SpringCloud 版本的命名規範實際上是 英文單詞 SRX 的形式命名

  • SpringCloud的版本號沒有採用 數字 命名,而是英文的單詞,?Angel、Brixton、Camden等都是倫敦地鐵站的名稱,它們按照字母順序發行。這個是主版本號,我們一般會稱之為 F版本,D版本。
  • 後面的SR表示“Service Release”,一般表示Bug修複;在SR版本發佈之前,會先發佈一個Release版本,例如Camden RELEASE。

總結

恭喜你完成了本章的學習,為你鼓掌!如果本文對你有幫助,請幫忙點贊,評論,轉發,這對作者很重要,謝謝。

要掌握SpringCloud更多的用法,請持續關註本系列教程。

歡迎關註本人公眾號:鹿老師的Java筆記,將在長期更新Java技術圖文教程和視頻教程,Java學習經驗,Java面試經驗以及Java實戰開發經驗。


您的分享是我們最大的動力!

更多相關文章
  • 近期在開發過程中,因為項目開發環境連接的mysql資料庫是阿裡雲的資料庫,而阿裡雲的資料庫版本是5.6的。而測試環境的mysql是自己安裝的5.7。因此在開發過程中有小伙伴不註意寫了有關group by的sql語句。在開發環境中運行是正常的,而到了測試環境中就發現了異常。 原因分析:MySQL5.7 ...
  • 隨著分散式技術的普及和海量數據的增長,io的能力越來越重要,java提供的io模塊提供了足夠的擴展性來適應。 我是李福春,我在準備面試,今天的問題是: java中的io有哪幾種? java中的io分3類: 1,BIO ,即同步阻塞IO,對應java.io包提供的工具;基於流模型,雖然直觀,代碼實現也 ...
  • 1. 概念 Reactive 非常適合低延遲、高吞吐量的工作負載。 Reactive Processing 是一種範式(規範),它使開發人員能夠構建非阻塞的、非同步的應用程式,這些應用程式能夠處理背壓(流控制) Reactive Streams 為無阻塞背壓的非同步流處理提供標準。 Reactor 是基 ...
  • 多態(Polymorphism)按字面的意思就是“多種狀態”。在面向對象語言中,介面的多種不同的實現方式即為多態。引用Charlie Calverts對多態的描述——多態性是允許你將父對象設置成為和一個或更多的他的子對象相等的技術,賦值之後,父對象就可以根據當前賦值給它的子對象的特性以不同的方式運作 ...
  • string 字元串在所有的語言中都非常重要,c++也不例外,接下來我們將介紹string中的常用方法 1. size() 和 length() 函數 : 他們返回字元串的真實長度,且不會因為空格而截斷,這兩個方法完全等價,使用及輸出如下: #include<iostream> #include<s ...
  • | 好看請贊,養成習慣 你有一個思想,我有一個思想,我們交換後,一個人就有兩個思想 If you can NOT explain it simply, you do NOT understand it well enough 現陸續將Demo代碼和技術文章整理在一起 "Github實踐精選" ,方便 ...
  • 一、語法 作用:簡化函數代碼 格式:lambda 參數列表 :表達式 P.s: lambda表達式參數可有可無,參數寫法同函數 lambda函數能接收任何數量的參數但只能返回一個表達式的值 def func0(): return 100 func = lambda: 100 # lambda本質是一 ...
  • 從本文開始,將開始介紹關於 Spring 的一些常見知識點。關註我的公眾號「Java面典」,每天 10:24 和你一起瞭解更多 Java 相關知識點。 在如今的 Java Web 開發中,Spring 生態圈占據著巨大的市場份額。幾乎是每個互聯網公司都在用 Spring 生態圈的東西。所以掌握Spr ...
一周排行
  • C#中的DefaultView方法 簡介: 首先可建立一個表,對錶進行填充若幹條數據,代碼如下: //創建Table1 DataTable dt = new DataTable(); //對Table1添加列名,並設置列值類型 DataTable dt1 = new DataTable();//創建 ...
  • 1、運行程式報錯: FailFast: Couldn't find a valid ICU package installed on the system. 解決方法: yum install icu -y 2、程式運行後,本地可以訪問,但其他機器無法訪問,需要開放埠 firewall-cmd - ...
  • 只是一個Demo,所用有很多功能也沒有添加進去如分頁,輸入驗證,頁面也沒有進行精心佈局。 整體先來幾張圖解 ...
  • Core提供二種開發模式:Core Pages和Core MVC,今天介紹的是Core MVC。 1、創建web MVC項目 新建service/h_r.baseservice類庫文件、data/h_r.efdata類庫文件、common/h_r.common類庫文件。 引入需要的CSS文件和JS文 ...
  • 學習網址:https://docs.microsoft.com/zh-cn/visualstudio/get-started/visual-studio-ide?view=vs-2019 示範 vs2019: 變數的重命名的重構,更改該變數命名的同時,引用該變數的地方也會更改,如果該變數有被反射用到 ...
  • 1、在data裡面新建個Entity文件用於存放表映射,設計資料庫,執行如下語句 Scaffold-DbContext -Force "server=.;user=sunyong;password=1qaz!QAZ;database=hr;" Microsoft.EntityFrameworkCor ...
  • 1、發送郵件類,百度一大堆,這裡用的也是直接百度拿過來的 public static bool get_send_email(email email, string Title, string Body) { MailMessage mailMsg = new MailMessage(); mail ...
  • 1、添加用戶列表控制器,用於用戶列表顯示,登錄,增刪改查,郵件發送,下載 public userlistController(MainDbContext _db, ILogger<operatorlog> _logger, IOptions<email> sendMail) { db = _db; ...
  • 1、用戶列表頁面 @{ Layout = Layout = null;}<table id="datalistuser" class="easyui-datagrid" url="/userlist/getuserlist" toolbar="#toolbaruser" rownumbers="tr ...
  • 1、引用包 Microsoft.EntityFrameworkCore.Tools Microsoft.EntityFrameworkCore.SqlServer Microsoft.AspNetCore.Mvc.Razor.RuntimeCompilation Microsoft.AspNetCo ...