摘要:微服務(wù)思想能否在計(jì)算機(jī)服務(wù)中實(shí)現(xiàn)蜂群效應(yīng)單主機(jī)部署多個(gè)服務(wù)的弊端監(jiān)控困難。不利于服務(wù)團(tuán)隊(duì)自治。而單個(gè)主機(jī)的部署導(dǎo)致所有服務(wù)都只能妥協(xié)于同一個(gè)運(yùn)行環(huán)境。微服務(wù)測(cè)試端到端的測(cè)試是脆弱的。如何應(yīng)對(duì)微服務(wù)系統(tǒng)故障在錯(cuò)誤發(fā)生時(shí)采用不指責(zé)文化。
單主機(jī)部署多個(gè)服務(wù)的弊端微服務(wù)思想能否在計(jì)算機(jī)服務(wù)中實(shí)現(xiàn)蜂群效應(yīng)?
監(jiān)控困難。監(jiān)控整個(gè)主機(jī)還是具體到某一個(gè)服務(wù)?
資源占用。每個(gè)服務(wù)之間計(jì)算資源的占用是不可控制,相互影響的。
依賴沖突。每個(gè)服務(wù)依賴可能不同,甚至沖突。
不利于服務(wù)團(tuán)隊(duì)自治。該主機(jī)該由哪個(gè)團(tuán)隊(duì)進(jìn)行維護(hù)?
強(qiáng)行統(tǒng)一不同服務(wù)的運(yùn)行環(huán)境。每個(gè)服務(wù)所需要的運(yùn)行環(huán)境可能有所偏好,比如有的計(jì)算密集,有的涉及存儲(chǔ)。而單個(gè)主機(jī)的部署導(dǎo)致所有服務(wù)都只能妥協(xié)于同一個(gè)運(yùn)行環(huán)境。
微服務(wù)測(cè)試端到端的測(cè)試是脆弱的。測(cè)試涉及眾多其它相關(guān)服務(wù),這些服務(wù)可能會(huì)出現(xiàn)錯(cuò)誤,導(dǎo)致測(cè)試無法達(dá)到測(cè)試想要的服務(wù)的目的。
遇到脆弱的測(cè)試應(yīng)該及時(shí)修復(fù)問題,而不是接受這種異常,認(rèn)為是出錯(cuò)是理所當(dāng)然的。
端到端的測(cè)試應(yīng)該盡快完成,否則開發(fā)人員已經(jīng)開始干新的事情,切換大腦的上下文來修復(fù)測(cè)試是很痛苦的。
端到端的測(cè)試,把注意力放到測(cè)試場(chǎng)景上,而不是測(cè)試故事上,測(cè)試重心放到核心的測(cè)試場(chǎng)景上面。
身份驗(yàn)證和授權(quán)SSO(Single Sign-On,單點(diǎn)登錄)指,當(dāng)主體試圖訪問一個(gè)資源時(shí),會(huì)首先被定位到一個(gè)身份提供者那里進(jìn)行身份認(rèn)證。主體通過驗(yàn)證以后,身份提供者向服務(wù)提供者發(fā)送消息,讓服務(wù)提供者決定是否允許他訪問資源。
黃金法則:不要實(shí)現(xiàn)自己的加密算法,不要發(fā)明自己的安全協(xié)議。
如何應(yīng)對(duì)微服務(wù)系統(tǒng)故障在錯(cuò)誤發(fā)生時(shí)采用不指責(zé)文化。
事物受益于失敗和混亂。
超時(shí)處理。在調(diào)用下游服務(wù)時(shí),應(yīng)該設(shè)置一個(gè)默認(rèn)的超時(shí),并且根據(jù)日志調(diào)整超時(shí)參數(shù)。
斷路器。使用斷路器時(shí),當(dāng)對(duì)下游資源的請(qǐng)求發(fā)生一定數(shù)量的失敗后,斷路器會(huì)打開。接下來,所有的請(qǐng)求在斷路器打開的狀態(tài)下,會(huì)快速地失敗。一段時(shí)間后,客戶端發(fā)送一些請(qǐng)求查看下游服務(wù)是否已經(jīng)恢復(fù),如果它得到了正的響應(yīng),將重置斷路器。
艙壁。把自己從故障中隔離出來的一種方式。
冪等對(duì)于冪等操作來說,其多次執(zhí)行產(chǎn)生的影響,均等于一次執(zhí)行的影響。當(dāng)不確定一個(gè)操作是否被執(zhí)行,想要重新處理消息,從而從錯(cuò)誤中恢復(fù)時(shí),冪等會(huì)很有用。
CAP定理分布式系統(tǒng)需要在三方面進(jìn)行權(quán)衡:一致性(consistency),可用性(availability)和分區(qū)容忍性(partition tolerance)。定理表明,最多只能保證三個(gè)中的兩個(gè)。
AP: 系統(tǒng)無法保證一致,比如服務(wù)節(jié)點(diǎn)之間無法同步數(shù)據(jù)。彌補(bǔ)方法可以采用最終一致性,在將來的某個(gè)時(shí)刻,所有的節(jié)點(diǎn)都能看到更新后的數(shù)據(jù),但是不會(huì)立即發(fā)生,用戶可能看到失效的數(shù)據(jù)。
CP:為了保證數(shù)據(jù)一致,該服務(wù)先暫時(shí)停用,這時(shí)要做好功能降級(jí)。保證一致性是困難的,不要試圖自己實(shí)現(xiàn)一個(gè)一致性數(shù)據(jù)存儲(chǔ)。
在分布式系統(tǒng)中,CA是不存在的。
文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請(qǐng)注明本文地址:http://systransis.cn/yun/25202.html
摘要:而微服務(wù)將這個(gè)理念應(yīng)用在獨(dú)立的服務(wù)上。微服務(wù)對(duì)比與原來的單體應(yīng)用,有它的優(yōu)勢(shì),如服務(wù)的自治性增強(qiáng)但同時(shí)也會(huì)帶來一些其他問題,如性能復(fù)雜度等問題。想要使用微服務(wù),首先是要清楚哪些業(yè)務(wù)或者功能應(yīng)該成為單獨(dú)的服務(wù)。其次,考慮業(yè)務(wù)極有可能的變化。 1、在學(xué)習(xí)軟件構(gòu)造、設(shè)計(jì)相關(guān)知識(shí)時(shí),大家應(yīng)該有學(xué)習(xí)到內(nèi)聚性的概念:即把因相同原因而變化的東西聚合到一起,而把因不同原因而變化的東西分離開來。而 微服...
摘要:本書概括以軟件系統(tǒng)為例,重點(diǎn)講解了應(yīng)用架構(gòu)中的物理設(shè)計(jì)問題,即如何將軟件系統(tǒng)拆分為模塊化系統(tǒng)。容器獨(dú)立模塊不依賴于具體容器,采用輕量級(jí)容器,如獨(dú)立部署模塊可獨(dú)立部署可用性模式發(fā)布接口暴露外部配置使用獨(dú)立的配置文件用于不同的上下文。 本文為讀書筆記,對(duì)書中內(nèi)容進(jìn)行重點(diǎn)概括,并將書中的模塊化結(jié)合微服務(wù)、Java9 Jigsaw談?wù)劺斫狻?本書概括 以Java軟件系統(tǒng)為例,重點(diǎn)講解了應(yīng)用架構(gòu)...
摘要:點(diǎn)擊此處了解網(wǎng)易微專業(yè)課程前段時(shí)間報(bào)名參加了網(wǎng)易云課堂微專業(yè)課程前端開發(fā)工程師,這周課程開始了,正式學(xué)習(xí)。以下內(nèi)容為前端開發(fā)工程師微專業(yè)的第一門課網(wǎng)頁制作的課程學(xué)習(xí)指南,學(xué)習(xí)視頻課程后自己整理的學(xué)習(xí)筆記,會(huì)持續(xù)更新內(nèi)容。 何為網(wǎng)易微專業(yè)? 微專業(yè)是由網(wǎng)易云課堂聯(lián)合各領(lǐng)域知名專家,以就業(yè)為導(dǎo)向,精心打造的職業(yè)培訓(xùn)方案。按要求完成學(xué)習(xí),考試通過可獲得專業(yè)認(rèn)定證書,令你求職或加薪多一份獨(dú)特優(yōu)...
摘要:點(diǎn)擊此處了解網(wǎng)易微專業(yè)課程前段時(shí)間報(bào)名參加了網(wǎng)易云課堂微專業(yè)課程前端開發(fā)工程師,這周課程開始了,正式學(xué)習(xí)。以下內(nèi)容為前端開發(fā)工程師微專業(yè)的第一門課網(wǎng)頁制作的課程學(xué)習(xí)指南,學(xué)習(xí)視頻課程后自己整理的學(xué)習(xí)筆記,會(huì)持續(xù)更新內(nèi)容。 何為網(wǎng)易微專業(yè)? 微專業(yè)是由網(wǎng)易云課堂聯(lián)合各領(lǐng)域知名專家,以就業(yè)為導(dǎo)向,精心打造的職業(yè)培訓(xùn)方案。按要求完成學(xué)習(xí),考試通過可獲得專業(yè)認(rèn)定證書,令你求職或加薪多一份獨(dú)特優(yōu)...
摘要:網(wǎng)上有很多前端的學(xué)習(xí)路徑文章,大多是知識(shí)點(diǎn)羅列為主或是資料的匯總,數(shù)據(jù)量讓新人望而卻步。天了解一個(gè)前端框架。也可以關(guān)注微信公眾號(hào)曉舟報(bào)告,發(fā)送獲取資料,就能收到下載密碼,網(wǎng)盤地址在最下方,獲取教程和案例的資料。 前言 好的學(xué)習(xí)方法可以事半功倍,好的學(xué)習(xí)路徑可以指明前進(jìn)方向。這篇文章不僅要寫學(xué)習(xí)路徑,還要寫學(xué)習(xí)方法,還要發(fā)資料,干貨滿滿,準(zhǔn)備接招。 網(wǎng)上有很多前端的學(xué)習(xí)路徑文章,大多是知...
閱讀 2664·2019-08-30 15:53
閱讀 2880·2019-08-29 16:20
閱讀 1087·2019-08-29 15:10
閱讀 1028·2019-08-26 10:58
閱讀 2198·2019-08-26 10:49
閱讀 640·2019-08-26 10:21
閱讀 708·2019-08-23 18:30
閱讀 1640·2019-08-23 15:58