創(chuàng)新互聯(lián)公司主要從事網(wǎng)站建設(shè)、成都網(wǎng)站設(shè)計(jì)、網(wǎng)頁設(shè)計(jì)、企業(yè)做網(wǎng)站、公司建網(wǎng)站等業(yè)務(wù)。立足成都服務(wù)桂林,十多年網(wǎng)站建設(shè)經(jīng)驗(yàn),價格優(yōu)惠、服務(wù)專業(yè),歡迎來電咨詢建站服務(wù):18980820575
隨著云原生微服務(wù)的日益火熱,很多人都開始對微服務(wù)的相關(guān)知識內(nèi)容感興趣。本篇內(nèi)容,旨在掃盲(意思是小白可入),希望能對大家有幫助。如有問題,歡迎大家一起討論,共同學(xué)習(xí)進(jìn)步。
互聯(lián)網(wǎng)初期, 2G還是個時髦詞兒,人們的需求也很樸實(shí),一個靜態(tài)網(wǎng)站告訴大家我是誰、一個留言板讓大家能夠與我聯(lián)系,就能滿足信息傳播和互相交流的需要。于是碼農(nóng)們給我們提供了這樣一套解決方案: 界面+業(yè)務(wù)處理+數(shù)據(jù)處理,通過一個zip包就可完成所有的事情,這也就是服務(wù)架構(gòu)的 單體架構(gòu)時代。
圖片為作者原創(chuàng)
隨著3G的普及,越來越多的人們可以通過PC上網(wǎng)了,此時BBS、門戶咨詢網(wǎng)站的出現(xiàn)開始吸引著大量觀眾。當(dāng)漂亮的交互更能抓人眼球、有趣的信息瞬間引爆千萬用戶在線圍觀時,“并發(fā)“問題產(chǎn)生了,于是碼農(nóng)們加班奮戰(zhàn),將系統(tǒng)分為前端和后端,通過拆分出可復(fù)用的中間件,來提升業(yè)務(wù)處理能力、解決并發(fā)問題,這便是 分層架構(gòu)時代的到來。
圖片為作者原創(chuàng)
后來,互聯(lián)網(wǎng)進(jìn)入微博時代,幾乎網(wǎng)民都有Blog,打開手機(jī)就刷weibo。而此時的分層架構(gòu)面對更復(fù)雜服務(wù)要求時,在應(yīng)用擴(kuò)展、服務(wù)調(diào)用、擴(kuò)容等方面都越發(fā)桎梏,于是服務(wù)架構(gòu)走進(jìn)了面向服務(wù)的架構(gòu)(SOA)時代。SOA網(wǎng)上說的很多,這里列舉幾個關(guān)鍵詞: 中心化的服務(wù)治理, ESB(企業(yè)服務(wù)總線)中心化、服務(wù)之間通過精確定義的接口進(jìn)行通訊、耦合度更低、擴(kuò)展性更高、維護(hù)成本較高。
圖片為作者原創(chuàng)
又過了幾年,電商掀起了各個時節(jié)的線上大促活動,與之伴隨而來的還有持續(xù)交付、灰度發(fā)布、服務(wù)限流、容錯保護(hù)、鏈路跟蹤、日志監(jiān)控、彈性伸縮等等一大串需求,也還有程序員日益見禿的頭頂和度數(shù)越來越深的眼鏡。當(dāng)運(yùn)維壓力已經(jīng)趕不上業(yè)務(wù)的快速發(fā)展時, 微服務(wù)時代來臨。可以這樣理解,微服務(wù)架構(gòu)也是SOA架構(gòu)分布式化的一種實(shí)現(xiàn)方式。它的優(yōu)勢在于小而治之、去中心化,但與之對應(yīng)的問題是,你要管理越來越多的微服務(wù)。而如何進(jìn)行微服務(wù)拆分和服務(wù)治理,是十分考驗(yàn)?zāi)芰Φ脑嚱鹗?/p>
縱觀前后,服務(wù)架構(gòu)歷次的迭代更新,都是圍繞著用戶如何節(jié)約成本和提升效率,來解決不斷出現(xiàn)的新問題, 微服務(wù)就是服務(wù)架構(gòu)演進(jìn)史的產(chǎn)物之一。
圖片為作者原創(chuàng)
微服務(wù)最流行的定義是由 Martin Fowler 與 James Lewis 于 2014 年共同提出。引用老爺子們的說法:
根據(jù)InfoQ發(fā)布的2019架構(gòu)和設(shè)計(jì)領(lǐng)域趨勢報(bào)告顯示,微服務(wù)架構(gòu)已經(jīng)走過了盲目追捧階段,開始逐漸走向成熟,走向切實(shí)可落地階段。
圖片來源:InfoQ發(fā)布的2019架構(gòu)和設(shè)計(jì)領(lǐng)域趨勢報(bào)告
在我們選擇之前,先來看看有什么能夠選的?
1、微服務(wù)框架的分類
目前市場上已經(jīng)出現(xiàn)的微服務(wù)框架非常多,他們各有所長。常見的微服務(wù)框架都有哪些呢?
如果從常見微服務(wù)框架形式分類來看,目前主要分為4類。
如果按照目前的主流生態(tài)體系來看,目前有三大生態(tài)體系:
這里特提供了官方地址供大家學(xué)習(xí),本文不再詳細(xì)展開討論,每一個家族都需要熬夜掉一把頭發(fā),潛心實(shí)踐和學(xué)習(xí)才能掌握。
總而言之,微服務(wù)的核心是服務(wù)治理,而服務(wù)治理就需要好的微服務(wù)框架,要不然微服務(wù)化可能是災(zāi)難!但做為用戶,選擇適合自己實(shí)際情況的才是最好的。
2、選擇適合自己的微服務(wù)框架
那么我們該如何選擇微服務(wù)框架呢?依賴于業(yè)務(wù)特點(diǎn)和技術(shù)能力。先選定方向,再研究技術(shù)細(xì)節(jié)。下面關(guān)于方向選擇的思路供各位參考:
如果你的業(yè)務(wù)模塊與服務(wù)治理是整合在一起的,依托特定開發(fā)語言和開發(fā)框架,通過配置來調(diào)整規(guī)則和策略,依賴業(yè)務(wù)上線對服務(wù)治理進(jìn)行功能升級,那么你可能比較適合集成方式進(jìn)行服務(wù)治理。你可以在Spring Cloud、Dubbo生態(tài)中去選擇合適自己的方式。
如果你的業(yè)務(wù)模塊與服務(wù)治理是分開的,與開發(fā)語言無關(guān)、與開發(fā)框架無關(guān),通過動態(tài)調(diào)整來配置運(yùn)行時各種規(guī)則和策略,服務(wù)治理功能升級獨(dú)立于業(yè)務(wù)模塊,那么你可能比較適合服務(wù)網(wǎng)格的方式進(jìn)行服務(wù)治理。你可以在云原生家族中去選擇合適自己的方式,比如嘗試下Istio。
3、什么時候引入微服務(wù)?
微服務(wù)不是萬能的,換句話說,微服務(wù)未見得適合于你。
1)天時
在業(yè)務(wù)運(yùn)行初期,如果你是單業(yè)務(wù)系統(tǒng)架構(gòu),如果業(yè)務(wù)量不大且復(fù)雜性不高,如果你追求快速響應(yīng)、開拓服務(wù)、節(jié)省成本、提高效率,那么你可能真的用不著微服務(wù)。比如你如果只是要用CMS做一套公司網(wǎng)站,那真的可能不用微服務(wù)這把牛刀。當(dāng)隨著你的業(yè)務(wù)進(jìn)入擴(kuò)展期,你的系統(tǒng)架構(gòu)開始走向面向服務(wù)架構(gòu),業(yè)務(wù)不斷擴(kuò)大,業(yè)務(wù)系統(tǒng)復(fù)雜性不斷提高,但效率在不斷下降,那么這個時候你可以開始考慮業(yè)務(wù)拆分、使用微服務(wù)了。
2)地利
如果要進(jìn)行微服務(wù)改造,還需要具備一定的資源條件,如物理機(jī)資源、網(wǎng)絡(luò)資源。舉個例子:假設(shè)一個電商平臺,現(xiàn)狀如圖。如果業(yè)務(wù)框架不那么復(fù)雜則可考慮不用微服務(wù)架構(gòu)。而如果需要進(jìn)行微服務(wù)改造,那么至少需要準(zhǔn)備規(guī)劃好如下資源:
3)人和
如果要享受微服務(wù)帶來的優(yōu)勢,就需要接受微服務(wù)帶來的挑戰(zhàn)。比如:
總之,使用微服務(wù)也是需要天時地利人和的,使用的過程也不要一蹴而就,服務(wù)治理是巨大的挑戰(zhàn)。
你的業(yè)務(wù)適合微服務(wù)嗎?我收集整理了幾個最簡單的問題以供快速自測:
簡單來說4步走:
其實(shí)每一步都有可能會有“坑”,這里面都是學(xué)問,都可獨(dú)立成章。因此,本文不詳細(xì)展開,以后再寫相關(guān)內(nèi)容文章詳談。
但是,Demo可以快速幫我們一探究竟,這里我選擇了京東智聯(lián)云的微服務(wù)平臺來做體驗(yàn)。
為啥是云上公有云產(chǎn)品?
因?yàn)槲⒎?wù)的體系太復(fù)雜龐大了,如果你自建,1個人搞不定1個團(tuán)隊(duì)的工作內(nèi)容。
還因?yàn)樵凇霸啤鄙鲜峭泄芊?wù),少運(yùn)維,所見即所得組件多,開源、多可用區(qū)、上手夠簡單夠快、學(xué)習(xí)和使用成本低呀。
簡單總結(jié)下我的學(xué)習(xí)路徑:
1、體驗(yàn)“云”上高可用注冊中心
如果您已有成熟的微服務(wù)項(xiàng)目,目前正在上云過程中,希望享受 “云” 帶來的注冊中心多可用區(qū)部署、最大程度的保證集群高可用的能力。那么可以直接使用微服務(wù)平臺的命名空間注冊中心功能。目前JDSF支持的微服務(wù)框架包含:SpringCloud、Dubbo、JSF。使用大致步驟如下:
入門示例參見: https:// distributed-service-framework/basic-example https:// distributed-service-framework/basic-example https:// distributed-service-framework/demo-deploy-k8s https:// distributed-service-framework/gw_vpc
怎么樣,微服務(wù)看上去是不是又沒有那么抽象、那么難、那么抓狂了呢?!更多內(nèi)容下次再分解。
歡迎點(diǎn)擊“ 京東智聯(lián)云 ”了解更多精彩內(nèi)容!
網(wǎng)站欄目:微服務(wù)的理想與現(xiàn)實(shí)
網(wǎng)站網(wǎng)址:http://www.chinadenli.net/article44/jigehe.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設(shè)、App設(shè)計(jì)、搜索引擎優(yōu)化、網(wǎng)頁設(shè)計(jì)公司、微信小程序、響應(yīng)式網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)