chinese直男口爆体育生外卖, 99久久er热在这里只有精品99, 又色又爽又黄18禁美女裸身无遮挡, gogogo高清免费观看日本电视,私密按摩师高清版在线,人妻视频毛茸茸,91论坛 兴趣闲谈,欧美 亚洲 精品 8区,国产精品久久久久精品免费

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

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示

微服務優(yōu)缺點解析

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

掃碼添加小助手

加入工程師交流群

前言

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

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

微服務有什么好處

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

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

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

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

通信,http請求速度慢,通常一個操作可能會涉及到多個微服務的相互調用,如果為了完成一個操作而多次從服務端調用不同的微服務,http請求的耗時可能會成為瓶頸,如圖1所示。

微服務優(yōu)缺點解析

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

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

微服務優(yōu)缺點解析

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

基于微服務架構和架構實施過程中存在的優(yōu)點和缺點:

采用微服務架構的優(yōu)點

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

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

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

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

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

采用微服務架構的缺點或困難

微服務架構需要開發(fā)團隊本身具備較強的團隊管理能力,軟件研發(fā)技能,因為管控的粒度單位已經(jīng)從原有業(yè)務系統(tǒng)變化為了微服務模塊。

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

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

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

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

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

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

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

    關注

    0

    文章

    150

    瀏覽量

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    Xilinx器件封裝全方位指南:設計與應用要點解析

    Xilinx器件封裝全方位指南:設計與應用要點解析 在電子設計領域,器件封裝猶如電子設備的“外衣”,不僅影響著器件的性能,還對整個系統(tǒng)的穩(wěn)定性和可靠性起著關鍵作用。Xilinx作為FPGA領域的領軍
    的頭像 發(fā)表于 03-27 11:00 ?145次閱讀

    Springboot+SpringData+SpringCloud微服務架構課程

    ? 后端進階必學:SpringCloud 微服務高可用落地實戰(zhàn) 在互聯(lián)網(wǎng)技術飛速迭代的今天,單體應用架構已逐漸難以承載億級流量的重擔。對于渴望突破瓶頸、邁向架構師行列的后端開發(fā)者而言,掌握微服務架構
    的頭像 發(fā)表于 03-19 16:08 ?302次閱讀

    基于OpenTelemetry的全鏈路追蹤微服務可觀測性實踐

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

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

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

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

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

    Keithley靜電計通斷測量要點解析

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

    如何基于Nginx構建微服務網(wǎng)關

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

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

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

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

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

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

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

    超級電容對比鋰電池的優(yōu)缺點

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

    商業(yè)云手機核心優(yōu)缺點分析

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

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

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

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

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

    企業(yè)使用NVIDIA NeMo微服務構建AI智能體平臺

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