91欧美超碰AV自拍|国产成年人性爱视频免费看|亚洲 日韩 欧美一厂二区入|人人看人人爽人人操aV|丝袜美腿视频一区二区在线看|人人操人人爽人人爱|婷婷五月天超碰|97色色欧美亚州A√|另类A√无码精品一级av|欧美特级日韩特级

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

微服務(wù)優(yōu)缺點(diǎn)解析

lhl545545 ? 來源:電子發(fā)燒友網(wǎng) ? 2018-02-09 09:01 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

前言

首先,微服務(wù)不是一個(gè)名字,而是一個(gè)架構(gòu)的概念,就像Restful不僅僅是描述api的格式,而更多的是描述基于Restful API的架構(gòu)是一樣的。微服務(wù)架構(gòu)(MSA)是對(duì)原來的大型系統(tǒng)而言的,通過橫向或者縱向、業(yè)務(wù)或者架構(gòu)切分,將一個(gè)大型的系統(tǒng)分散成很多微型小系統(tǒng)。當(dāng)系統(tǒng)復(fù)雜到一定程度時(shí),幾十號(hào)人共同維護(hù)一個(gè)系統(tǒng)的效率很低,而且出問題的風(fēng)險(xiǎn)也很高。

這時(shí)候就需要對(duì)系統(tǒng)進(jìn)行切分,很早之前提出的SOA系統(tǒng),和微服務(wù)的架構(gòu)理念不謀而合。大家現(xiàn)在使用的基于RPC框架(dubbo、thrift等)的架構(gòu)也可以視為一種微服務(wù)。微服務(wù)到現(xiàn)在為止還沒有確切的邊界和定義,貌似計(jì)算機(jī)上很多概念都定義不出來邊界。但是,我理解微服務(wù)之間的通信是http通信,傳統(tǒng)rpc調(diào)用方式并不是嚴(yán)格的微服務(wù),因?yàn)樗荒茏岳?,需要依賴,比如可能必須某個(gè)rpc服務(wù)Producer存在的情況下,rpc服務(wù)的Consumer才能啟動(dòng)起來。所以,下文中的討論,我都以微服務(wù)之間以http通信為前提。

微服務(wù)有什么好處

解耦:對(duì)于我們底層程序員而言,看得見的好處就是解耦。我要實(shí)現(xiàn)一個(gè)功能,可能并不需要很深入的了解別人的代碼,因?yàn)槌绦騿T嘛,可能都覺得別人的代碼是個(gè)渣渣([哭笑不得])。我可以新作一個(gè)微服務(wù),這個(gè)服務(wù)為其他功能提供服務(wù),又不依賴于原來已有的功能,至于業(yè)務(wù)邏輯,可以一邊上手一邊熟悉 內(nèi)聚,可以獨(dú)立部署:意思就是我維護(hù)的這個(gè)微服務(wù),可以獨(dú)立部署,對(duì)其他服務(wù)不會(huì)是強(qiáng)依賴,不會(huì)存在因?yàn)槠渌?wù)不存在而造成我自己的服務(wù)不能啟動(dòng)或者不可用的問題。

分布式:微服務(wù)架構(gòu)下不存在一個(gè)特別大的系統(tǒng)包含很多中心功能,這樣也能提高容錯(cuò)性,一個(gè)服務(wù)的癱瘓并不會(huì)讓整個(gè)系統(tǒng)癱瘓 權(quán)限驗(yàn)證:微服務(wù)是高度內(nèi)聚的服務(wù),我自己的這個(gè)服務(wù),我可以定制任意合理規(guī)則,而這個(gè)規(guī)則又只適用于我自己的服務(wù)。相比于dubbo RPC調(diào)用,http微服務(wù)調(diào)用的權(quán)限驗(yàn)證可以更直接更嚴(yán)格更定制化,而rpc調(diào)用時(shí)的權(quán)限驗(yàn)證,我個(gè)人始終覺得不能做的很優(yōu)雅 數(shù)據(jù)分開治理,自帶分庫屬性:原來的大系統(tǒng)使用一個(gè)數(shù)據(jù)庫,當(dāng)數(shù)據(jù)很多流量很大時(shí),就會(huì)涉及到分庫分表。

而微服務(wù)下,每個(gè)服務(wù)是否使用數(shù)據(jù)庫,數(shù)據(jù)庫是和其他服務(wù)公用還是自建,都有很大靈活性,即我覺得微服務(wù)自帶分庫分表屬性 系統(tǒng)不會(huì)被長(zhǎng)期限制在某個(gè)技術(shù)棧上,在微服務(wù)的架構(gòu)下,整個(gè)系統(tǒng)不會(huì)受限于java或者nodejs 或者go,而是大家協(xié)同不沖突,全部http協(xié)議,json格式 各個(gè)模塊的單元測(cè)試容易自動(dòng)化 等

微服務(wù)面臨的挑戰(zhàn)

通信,http請(qǐng)求速度慢,通常一個(gè)操作可能會(huì)涉及到多個(gè)微服務(wù)的相互調(diào)用,如果為了完成一個(gè)操作而多次從服務(wù)端調(diào)用不同的微服務(wù),http請(qǐng)求的耗時(shí)可能會(huì)成為瓶頸,如圖1所示。

微服務(wù)優(yōu)缺點(diǎn)解析

客戶端與服務(wù)端的通信需要一個(gè) API GateWay:通常情況下,客戶端和微服務(wù)們不在一起,而各個(gè)微服務(wù)會(huì)集中部署在一個(gè)機(jī)房,那微服務(wù)之間的互相調(diào)用是很快速的,但是客戶端和微服務(wù)之間的調(diào)用會(huì)是耗時(shí)的。而且,用戶的一個(gè)動(dòng)作不能在客戶端進(jìn)行多次連續(xù)調(diào)用,這樣一來速度慢,二來會(huì)有泄漏系統(tǒng)架構(gòu)的風(fēng)險(xiǎn)。正常情況下,在客戶端和微服務(wù)架構(gòu)之間會(huì)有一個(gè)API GateWay。

如圖1變成圖2所示,GateWay最重要的作用是為客戶端提供后臺(tái)服務(wù)的聚合,提供一個(gè)統(tǒng)一的服務(wù)出口,解除他們之間的耦合,為了解決API Gateway單點(diǎn)故障點(diǎn)或者性能瓶頸,通常Gateway也是一個(gè)集群,而且客戶端的訪問控制、賬號(hào)管理、登錄管理等切面通常會(huì)在這里處理

微服務(wù)優(yōu)缺點(diǎn)解析

微服務(wù)很多時(shí),整個(gè)鏈路可能很長(zhǎng),調(diào)用失敗的風(fēng)險(xiǎn)高,而且e2e自動(dòng)化測(cè)試會(huì)成為一個(gè)問題 服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn),我司有自己的服務(wù)管理系統(tǒng)。我推薦etcd。Google開源的Kubernetes(k8s)貌似也是使用的這個(gè)。 分布式事務(wù),這個(gè)是微服務(wù)系統(tǒng)的大難點(diǎn),可能需要根據(jù)自己系統(tǒng)的情況和業(yè)務(wù)需求進(jìn)行定制了,我推薦補(bǔ)償性分布式事務(wù)和基于消息的分布式事務(wù)。(下次有時(shí)間介紹一下常用的集中分布式事務(wù)要怎么做)

基于微服務(wù)架構(gòu)和架構(gòu)實(shí)施過程中存在的優(yōu)點(diǎn)和缺點(diǎn):

采用微服務(wù)架構(gòu)的優(yōu)點(diǎn)

采用微服務(wù)架構(gòu)可以更好的實(shí)現(xiàn)DevOps開發(fā)運(yùn)維一體化,同時(shí)因?yàn)槲⒎?wù)架構(gòu)下各個(gè)微服務(wù)模塊相對(duì)獨(dú)立和松耦合,因此在后續(xù)業(yè)務(wù)變更的分析和處理中往往能夠更加敏捷快速的響應(yīng),同時(shí)相對(duì)影響也最小。

整個(gè)業(yè)務(wù)系統(tǒng)水平擴(kuò)展更加容易,單體應(yīng)用要擴(kuò)展往往數(shù)據(jù)庫是大問題,而在微服務(wù)架構(gòu)下實(shí)現(xiàn)了單體應(yīng)用的垂直拆分,可以更加容易的通過廉價(jià)的X86服務(wù)器資源來實(shí)現(xiàn)水平擴(kuò)展。

通過微服務(wù)架構(gòu)可以更好的提升各個(gè)模塊的可復(fù)用性和可組裝性。通過微服務(wù)架構(gòu)更好的實(shí)現(xiàn)了原單體應(yīng)用內(nèi)部各個(gè)組件或模塊的徹底解耦,通過解耦本身也降低了原單體應(yīng)用內(nèi)部的復(fù)雜度。

可以使研發(fā)過程根據(jù)敏捷和小團(tuán)隊(duì)化,包括和敏捷軟件開發(fā)最佳實(shí)踐更好的匹配,每個(gè)微服務(wù)模塊都可以形成獨(dú)立的敏捷小團(tuán)隊(duì)進(jìn)行開發(fā)和部署上線。

進(jìn)一步在傳統(tǒng)單體應(yīng)用內(nèi)部實(shí)施SOA參考架構(gòu)思想,體現(xiàn)業(yè)務(wù)能力組件化,組件能力服務(wù)化,同時(shí)也可以更好貫徹各個(gè)能力中心和前端應(yīng)用組件的分離,實(shí)現(xiàn)共性能力下沉和復(fù)用。

采用微服務(wù)架構(gòu)的缺點(diǎn)或困難

微服務(wù)架構(gòu)需要開發(fā)團(tuán)隊(duì)本身具備較強(qiáng)的團(tuán)隊(duì)管理能力,軟件研發(fā)技能,因?yàn)楣芸氐牧6葐挝灰呀?jīng)從原有業(yè)務(wù)系統(tǒng)變化為了微服務(wù)模塊。

微服務(wù)架構(gòu)本身會(huì)提升開發(fā)難度和工作量,特別是上層的跨多個(gè)微服務(wù)模塊或組件的功能應(yīng)用的實(shí)現(xiàn),往往需要在前端進(jìn)行服務(wù)組合而不是傳統(tǒng)方式在數(shù)據(jù)庫層做SQL關(guān)聯(lián)。

由于各個(gè)微服務(wù)模塊完全相對(duì)獨(dú)立和松耦合,因此對(duì)于跨多模塊業(yè)務(wù)帶來的分布式事務(wù)問題是必須解決或找尋替代方案。特別是在微服務(wù)架構(gòu)下數(shù)據(jù)庫已經(jīng)進(jìn)行了垂直拆分,對(duì)于跨庫訪問本身的分布式事務(wù)一致性問題是最需要和重視的問題。

服務(wù)的治理將成為實(shí)施微服務(wù)架構(gòu)中重點(diǎn)問題,包括了服務(wù)全生命周期管理,服務(wù)后期的運(yùn)維和監(jiān)控,性能分析,服務(wù)鏈監(jiān)控等。如果企業(yè)本身的IT治理和SOA管控治理能力弱,那么及時(shí)開始正常實(shí)施了微服務(wù)架構(gòu),到了后期的運(yùn)維管控也很難做的很好。其核心原因還是管控的粒度更加細(xì),需要管控的微服務(wù)模塊,服務(wù)接口都會(huì)呈現(xiàn)指數(shù)級(jí)增加。

集成復(fù)雜度增加,任何徹底的分解都將帶來集成的復(fù)雜度,即模塊在集成時(shí)候需要外部微服務(wù)模塊更多的配合。

部署復(fù)雜度增加,由于微服務(wù)模塊需要獨(dú)立部署,往往涉及到多達(dá)上100個(gè)容器的安裝和部署和集成等相關(guān)工作,這也是需要和Docker集成并實(shí)現(xiàn)自動(dòng)部署的一個(gè)原因。

微服務(wù)很多時(shí),整個(gè)鏈路可能很長(zhǎng),調(diào)用失敗的風(fēng)險(xiǎn)高,而且e2e自動(dòng)化測(cè)試會(huì)成為一個(gè)問題 服務(wù)注冊(cè)和服務(wù)發(fā)現(xiàn),我司有自己的服務(wù)管理系統(tǒng)。我推薦etcd。Google開源的Kubernetes(k8s)貌似也是使用的這個(gè)。 分布式事務(wù),這個(gè)是微服務(wù)系統(tǒng)的大難點(diǎn),可能需要根據(jù)自己系統(tǒng)的情況和業(yè)務(wù)需求進(jìn)行定制了,我推薦補(bǔ)償性分布式事務(wù)和基于消息的分布式事務(wù)。(下次有時(shí)間介紹一下常用的集中分布式事務(wù)要怎么做)

聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • 微服務(wù)
    +關(guān)注

    關(guān)注

    0

    文章

    150

    瀏覽量

    8103
收藏 人收藏
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

    評(píng)論

    相關(guān)推薦
    熱點(diǎn)推薦

    基于OpenTelemetry的全鏈路追蹤微服務(wù)可觀測(cè)性實(shí)踐

    微服務(wù)拆分到第三年,我們的服務(wù)數(shù)量從最初的5個(gè)膨脹到了47個(gè)。一個(gè)用戶下單請(qǐng)求要經(jīng)過API Gateway -> 用戶服務(wù) -> 商品服務(wù) -> 庫存
    的頭像 發(fā)表于 02-26 15:43 ?159次閱讀

    對(duì)比分析電能質(zhì)量在線監(jiān)測(cè)裝置支持的斷點(diǎn)續(xù)傳文件傳輸協(xié)議的優(yōu)缺點(diǎn)

    優(yōu)缺點(diǎn)對(duì)比分析: 一、各協(xié)議優(yōu)缺點(diǎn)逐一拆解 1. FTP(文件傳輸協(xié)議) 優(yōu)點(diǎn) 斷點(diǎn)續(xù)傳機(jī)制成熟 :依托REST命令可精準(zhǔn)定位字節(jié)偏移量,支持大文件分塊續(xù)傳,且內(nèi)置 CRC 校驗(yàn)保障數(shù)據(jù)完整性,是裝置的基礎(chǔ)標(biāo)配功能,適配性強(qiáng)。 傳輸效率高 :無加密運(yùn)算損耗,傳輸速率
    的頭像 發(fā)表于 12-05 17:49 ?3427次閱讀
    對(duì)比分析電能質(zhì)量在線監(jiān)測(cè)裝置支持的斷點(diǎn)續(xù)傳文件傳輸協(xié)議的<b class='flag-5'>優(yōu)缺點(diǎn)</b>

    華納云VPS容器服務(wù)網(wǎng)格流量管理:實(shí)現(xiàn)微服務(wù)高效路由

    在云計(jì)算和微服務(wù)架構(gòu)日益普及的今天,華納云香港VPS憑借其優(yōu)越的地緣優(yōu)勢(shì)和網(wǎng)絡(luò)自由,成為眾多企業(yè)部署容器化應(yīng)用的熱門選擇。復(fù)雜的微服務(wù)架構(gòu)帶來了流量管理的巨大挑戰(zhàn)。本文將深入探討如何利用容器服務(wù)
    的頭像 發(fā)表于 10-16 17:09 ?529次閱讀

    Keithley靜電計(jì)通斷測(cè)量要點(diǎn)解析

    在現(xiàn)代電子測(cè)試中,Keithley靜電計(jì)憑借其高精度與穩(wěn)定性成為科研和工業(yè)領(lǐng)域的常用工具。進(jìn)行通斷測(cè)量時(shí),準(zhǔn)確掌握操作要點(diǎn)是確保數(shù)據(jù)可靠性的關(guān)鍵。以下是使用Keithley靜電計(jì)進(jìn)行通斷測(cè)量的核心要點(diǎn)解析
    的頭像 發(fā)表于 09-09 11:44 ?648次閱讀
    Keithley靜電計(jì)通斷測(cè)量要<b class='flag-5'>點(diǎn)解析</b>

    如何基于Nginx構(gòu)建微服務(wù)網(wǎng)關(guān)

    今天,我將分享我們團(tuán)隊(duì)如何基于Nginx構(gòu)建了一個(gè)日均處理10億+請(qǐng)求的微服務(wù)網(wǎng)關(guān),以及踩過的那些坑。這套方案已經(jīng)穩(wěn)定運(yùn)行2年+,經(jīng)歷過多次大促考驗(yàn)。
    的頭像 發(fā)表于 09-02 16:29 ?826次閱讀

    Jtti海外VPS微服務(wù)架構(gòu)下的日志采集與分析優(yōu)化方案

    隨著跨境業(yè)務(wù)和分布式應(yīng)用的普及,越來越多的企業(yè)在海外VPS上構(gòu)建微服務(wù)架構(gòu),以提升系統(tǒng)擴(kuò)展性和靈活性。然而,微服務(wù)化帶來了一個(gè)新的挑戰(zhàn):日志數(shù)據(jù)分散在多個(gè)服務(wù)和節(jié)點(diǎn)中,若缺乏統(tǒng)一采集與分析機(jī)制,將
    的頭像 發(fā)表于 08-27 17:13 ?571次閱讀

    無線局域網(wǎng)的優(yōu)缺點(diǎn)和使用要點(diǎn)

    近年來,無線局域網(wǎng) 已普遍應(yīng)用于我們生活的方方面面。本文將介紹無線局域網(wǎng)的基礎(chǔ)知識(shí)、優(yōu)缺點(diǎn)、與 Wi-Fi 及有線局域網(wǎng)的區(qū)別,以及有效使用的要點(diǎn)。全球領(lǐng)先的短距離無線模塊供應(yīng)商 KAGA FEI
    的頭像 發(fā)表于 08-14 16:04 ?2975次閱讀
    無線局域網(wǎng)的<b class='flag-5'>優(yōu)缺點(diǎn)</b>和使用要點(diǎn)

    電商API的微服務(wù)架構(gòu)優(yōu)化策略

    ? 隨著電子商務(wù)的快速發(fā)展,API(應(yīng)用程序編程接口)已成為電商平臺(tái)的核心組件,負(fù)責(zé)連接用戶、商家和后臺(tái)系統(tǒng)。微服務(wù)架構(gòu)通過將應(yīng)用拆分為獨(dú)立、可擴(kuò)展的服務(wù)單元,顯著提升了系統(tǒng)的靈活性和可維護(hù)性。然而
    的頭像 發(fā)表于 07-23 14:30 ?623次閱讀
    電商API的<b class='flag-5'>微服務(wù)</b>架構(gòu)優(yōu)化策略

    超級(jí)電容對(duì)比鋰電池的優(yōu)缺點(diǎn)

    本文探討了超級(jí)電容和鋰電池在儲(chǔ)能領(lǐng)域的優(yōu)缺點(diǎn)。超級(jí)電容以高能量密度著稱,但充電速度較慢;鋰電池則具有快充和壽命長(zhǎng)的優(yōu)勢(shì),但成本較高。在新能源汽車和電網(wǎng)調(diào)頻等高頻次應(yīng)用中,兩者可以互補(bǔ)。
    的頭像 發(fā)表于 06-30 09:37 ?2645次閱讀
    超級(jí)電容對(duì)比鋰電池的<b class='flag-5'>優(yōu)缺點(diǎn)</b>

    商業(yè)云手機(jī)核心優(yōu)缺點(diǎn)分析

    商業(yè)云手機(jī)核心優(yōu)缺點(diǎn)分析,綜合技術(shù)性能、成本效率及場(chǎng)景適配性等多維度對(duì)比: 核心優(yōu)勢(shì)? 成本革命? 硬件零投入?:免除實(shí)體手機(jī)采購(旗艦機(jī)均價(jià)6000元),企業(yè)百臺(tái)規(guī)??墒?0萬+ CAPEX
    的頭像 發(fā)表于 06-16 08:11 ?1041次閱讀
    商業(yè)云手機(jī)核心<b class='flag-5'>優(yōu)缺點(diǎn)</b>分析

    PCBA 表面處理:優(yōu)缺點(diǎn)大揭秘,應(yīng)用場(chǎng)景全解析

    一站式PCBA加工廠家今天為大家講講PCBA加工如何選擇合適的表面處理工藝?PCBA表面處理優(yōu)缺點(diǎn)與應(yīng)用場(chǎng)景。在電子制造中,PCBA板的表面處理工藝對(duì)電路板的性能、可靠性和成本都有重要影響。選擇合適
    的頭像 發(fā)表于 05-05 09:39 ?1402次閱讀
    PCBA 表面處理:<b class='flag-5'>優(yōu)缺點(diǎn)</b>大揭秘,應(yīng)用場(chǎng)景全<b class='flag-5'>解析</b>

    3D打印耗材種類有哪些?各有什么優(yōu)缺點(diǎn)?

    這篇文章將為你詳細(xì)介紹3D打印耗材的基礎(chǔ)知識(shí),幫助你了解這些材料的特性、優(yōu)缺點(diǎn)以及它們適合的應(yīng)用場(chǎng)景。
    的頭像 發(fā)表于 04-29 09:40 ?5.3w次閱讀
    3D打印耗材種類有哪些?各有什么<b class='flag-5'>優(yōu)缺點(diǎn)</b>?

    企業(yè)使用NVIDIA NeMo微服務(wù)構(gòu)建AI智能體平臺(tái)

    已發(fā)布的 NeMo 微服務(wù)可與合作伙伴平臺(tái)集成,作為創(chuàng)建 AI 智能體的構(gòu)建模塊,使用商業(yè)智能與強(qiáng)大的邏輯推理模型 (包括 NVIDIA Llama Nemotron) 處理更多任務(wù)。
    的頭像 發(fā)表于 04-27 15:05 ?1287次閱讀

    CMOS,Bipolar,F(xiàn)ET這三種工藝的優(yōu)缺點(diǎn)是什么?

    在我用photodiode工具選型I/V放大電路的時(shí)候,系統(tǒng)給我推薦了AD8655用于I/V,此芯片為CMOS工藝 但是查閱資料很多都是用FET工藝的芯片,所以請(qǐng)教下用于光電信號(hào)放大轉(zhuǎn)換(主要考慮信噪比和帶寬)一般我們用哪種工藝的芯片, CMOS,Bipolar,F(xiàn)ET這三種工藝的優(yōu)缺點(diǎn)是什么?
    發(fā)表于 03-25 06:23

    壓接連接器使用裸銅線的優(yōu)缺點(diǎn)分析?

    壓接連接器使用裸銅線是一種高效、可靠的電氣連接方式,廣泛應(yīng)用于電力、通信和工業(yè)領(lǐng)域。需要我們正確看待它的優(yōu)缺點(diǎn),高效使用。
    的頭像 發(fā)表于 03-18 11:01 ?1169次閱讀