開篇(零)

引言

  • 微服務這個詞的熱度自從它出現(xiàn)以后,就一直高燒不退萍鲸,而微服務之所以這么火,其實和近幾年互聯(lián)網(wǎng)的氛圍是分不開的柳击。
  • 與傳統(tǒng)行業(yè)不同猿推,互聯(lián)網(wǎng)企業(yè)有一個特點,那就是市場擴張的速度非常之快捌肴,可能幾天的時間一個原本不知名的公司蹬叭,搖生一變,就成一個盡人皆知的互聯(lián)網(wǎng)獨角獸公司状知。
  • 而伴隨著這些秽五,接踵而來的,就是業(yè)務的極速變化與規(guī)模的擴張饥悴,這就對應用應對變化的能力提出了很高的要求坦喘。
  • 微服務,就是專門質(zhì)量這種情況的良藥西设。也因此瓣铣, 現(xiàn)在絕大多數(shù)互聯(lián)網(wǎng)公司都逐漸引入了微服務架構(gòu),以便于應對發(fā)展越來越快的業(yè)務需求贷揽。
  • 如今作為一名程序員棠笑,特別是Java程序員如果說不知道微服務都不好意思出門見人。
  • 而就在 2018年10月31日凌晨禽绪,這個偉大的日子里蓖救,Spring Cloud Alibaba 正式入駐了Spring Cloud官方孵化器洪规,并在maven中央倉庫發(fā)布了第一個版本。

而從那天起一個新的微服務領袖誕生了循捺。

什么是Spring Cloud

  • 說起微服務就不得不提到Spring Cloud和Spring 是個神奇的團隊斩例。
  • 說起這個團隊,他們的代碼質(zhì)量从橘,包括他們的工匠精神念赶,都是所有程序員應該學習的榜樣。

Spring Cloud是什么洋满?

  • 很多人雖然一直在用Spring Cloud,但其實并不了解Spring Cloud到底是什么晶乔,只知道我做微服務珍坊,可以選擇使用Spring Cloud.
  • 首先我們看下Spring Cloud官方的介紹牺勾,其實一句話基本上說出來Spring Cloud的本質(zhì)。

Spring Cloud provides tools for developers to quickly build some of the common patterns in distributed systems.Coordination of distributed systems leads to boiler plate patterns, and using Spring Cloud developers can quickly stand up services and applications that implement those patterns. They will work well in any distributed environment, including the developer's own laptop, bare metal data centres, and managed platforms such as Cloud Foundry.
翻譯: Spring Cloud提供了一些工具阵漏,可以讓開發(fā)者快速構(gòu)建基于一些通用模式的分布式應用驻民。分布式應用的協(xié)調(diào)都遵循“鍋爐板模式”(boiler plate patterns),使用Spring Cloud以后履怯,開發(fā)者可以更快的構(gòu)建實現(xiàn)了這些模式的服務和應用回还。而這些服務和應用,也可以很好的工作在任何分布式環(huán)境叹洲,包括開發(fā)者自己的筆記本柠硕,裸金屬數(shù)據(jù)中心以及像Cloud Foundry這樣的托管平臺。

  • 和Spring團隊以往的做法相似运提,不管是之前的Spring Framework蝗柔,還是后來的Spring Boot,Spring團隊一直致力于讓開發(fā)者可以“更快更好”的做開發(fā)。
  • 這正是Spring團隊在開發(fā)者圈子中口碑一直很好的原因民泵,Spring團隊一直為開發(fā)者服務癣丧,而且是開源的,可以說Java之所以這么火栈妆,Spring團隊功不可沒胁编。

Spring Cloud提供了那些工具

  • Spring Cloud官方文檔中,我可以摘取到Spring Cloud的核心功能鳞尔。
  • Distributed/versioned configuration【分布式以及版本化的配置】
  • Service registration and discovery【服務注冊與發(fā)現(xiàn)】
  • Routing【路由】
  • Service-to-service calls【服務調(diào)用】
  • Load balancing【負載均衡】
  • Circuit Breakers【斷路器】
  • Distributed messaging【分布式消息】

上面的功能嬉橙,就是我們在開發(fā)微服務是經(jīng)常使用的,不過Spring 團隊厲害的地方就在于寥假,他們很少重復造輪子市框,而是讓別人幫他們造輪子。

比如最早的Spring Framework, Spring只是提供了IOC和AOP的核心功能昧旨,而具體的MVC框架拾给、ORM框架祥得、緩存等等,Spring也都只是提供了很好的支持和兼容蒋得,并不會去自己實現(xiàn)一個级及。

當然,除非對方做的不好额衙,比如Spring MVC
,就是因為當初的Struts2有著諸多的缺陷饮焦,Spring團隊看不下去,才站出來發(fā)不了SpringMVC(個人理解)窍侧,進而成立現(xiàn)金主流的MVC框架县踢。

同樣,Spring Cloud也是如此伟件, Spring Cloud的核心并沒有實現(xiàn)任何上述功能硼啤,只是制定了一套規(guī)范。Spring Cloud官方文檔的一段介紹:

Many of those features are covered by Spring Boot, on which Spring Cloud builds. Some more features are delivered by Spring Cloud as two libraries: Spring Cloud Context and Spring Cloud Commons. Spring Cloud Context provides utilities and special services for the ApplicationContext of a Spring Cloud application (bootstrap context, encryption, refresh scope, and environment endpoints). Spring Cloud Commons is a set of abstractions and common classes used in different Spring Cloud implementations (such as Spring Cloud Netflix and Spring Cloud Consul).
翻譯:
這些功能(就是上面列舉的功能)大部分是由Spring Boot覆蓋的斧账,而Spring Cloud基于Spring Boot構(gòu)建谴返。Spring Cloud作為兩個libraries提供了更多的功能。這兩個libraries分別是咧织,Spring Cloud ContextSpring Cloud Commons嗓袱。

  • Spring Cloud Context提供了一些工具,以及一個Spring Cloud應用的
    ApplicationContext的特殊服務习绢,比如bootstrap上下文(關于這個家伙渠抹,后面有機會筆者會詳細介紹)、加密闪萄、刷新梧却、環(huán)境端點這些功能。
  • Spring Cloud Commons則是一組抽象和在不同Spring Cloud實現(xiàn)(比如Spring Cloud Netflix和Spring Cloud Consul)中使用的通用類桃煎。

從官方介紹也可以看出Spring Cloud其實就是一套規(guī)范篮幢,而不是一個可以直接拿來使用的即用的框架。而Spring Cloud Negflix以及Spring Cloud Consul,才是基于Spring Cloud規(guī)范的實現(xiàn)方为迈。

而從Spring Cloud Alibaba發(fā)布那天開始三椿,Spring Cloud的實現(xiàn)又多了一種。
接下來的文章我們就來認識下什么是Spring Cloud Alibaba葫辐,以及它如何使用搜锰。

微服務全景架構(gòu)圖
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市耿战,隨后出現(xiàn)的幾起案子蛋叼,更是在濱河造成了極大的恐慌,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,743評論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件狈涮,死亡現(xiàn)場離奇詭異狐胎,居然都是意外死亡,警方通過查閱死者的電腦和手機歌馍,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評論 3 385
  • 文/潘曉璐 我一進店門握巢,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人松却,你說我怎么就攤上這事暴浦。” “怎么了晓锻?”我有些...
    開封第一講書人閱讀 157,285評論 0 348
  • 文/不壞的土叔 我叫張陵歌焦,是天一觀的道長。 經(jīng)常有香客問我砚哆,道長独撇,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,485評論 1 283
  • 正文 為了忘掉前任窟社,我火速辦了婚禮券勺,結(jié)果婚禮上绪钥,老公的妹妹穿的比我還像新娘灿里。我一直安慰自己,他們只是感情好程腹,可當我...
    茶點故事閱讀 65,581評論 6 386
  • 文/花漫 我一把揭開白布匣吊。 她就那樣靜靜地躺著,像睡著了一般寸潦。 火紅的嫁衣襯著肌膚如雪色鸳。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,821評論 1 290
  • 那天见转,我揣著相機與錄音命雀,去河邊找鬼。 笑死斩箫,一個胖子當著我的面吹牛吏砂,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播乘客,決...
    沈念sama閱讀 38,960評論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼狐血,長吁一口氣:“原來是場噩夢啊……” “哼!你這毒婦竟也來了易核?” 一聲冷哼從身側(cè)響起匈织,我...
    開封第一講書人閱讀 37,719評論 0 266
  • 序言:老撾萬榮一對情侶失蹤,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后缀匕,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體纳决,經(jīng)...
    沈念sama閱讀 44,186評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,516評論 2 327
  • 正文 我和宋清朗相戀三年乡小,在試婚紗的時候發(fā)現(xiàn)自己被綠了岳链。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,650評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡劲件,死狀恐怖掸哑,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情零远,我是刑警寧澤苗分,帶...
    沈念sama閱讀 34,329評論 4 330
  • 正文 年R本政府宣布,位于F島的核電站牵辣,受9級特大地震影響摔癣,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜纬向,卻給世界環(huán)境...
    茶點故事閱讀 39,936評論 3 313
  • 文/蒙蒙 一择浊、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧逾条,春花似錦琢岩、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至吃警,卻和暖如春糕篇,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背酌心。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評論 1 266
  • 我被黑心中介騙來泰國打工拌消, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人安券。 一個月前我還...
    沈念sama閱讀 46,370評論 2 360
  • 正文 我出身青樓墩崩,卻偏偏與公主長得像,于是被迫代替她去往敵國和親完疫。 傳聞我的和親對象是個殘疾皇子泰鸡,可洞房花燭夜當晚...
    茶點故事閱讀 43,527評論 2 349