国产精品久久久aaaa,日日干夜夜操天天插,亚洲乱熟女香蕉一区二区三区少妇,99精品国产高清一区二区三区,国产成人精品一区二区色戒,久久久国产精品成人免费,亚洲精品毛片久久久久,99久久婷婷国产综合精品电影,国产一区二区三区任你鲁

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

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

3天內不再提示

技術速遞 | 分布式政企應用如何快速實現云原生的微服務架構改造

華為DevCloud ? 來源:未知 ? 2023-04-19 00:45 ? 次閱讀
加入交流群
微信小助手二維碼

掃碼添加小助手

加入工程師交流群

作者:楊奕 華為云技術規劃專家

在以往的文章《云原生微服務治理技術朝無代理架構的演進之路》中,我們介紹了幾種微服務架構模式,如下圖所示。

04278c40-de08-11ed-bfe3-dac502259ad0.png

注:圖片來源https://twitter.com/bibryam/status/1026429379587567616

今天主要是介紹,第一種SOA/ESB架構,在Java語言場景下,如何朝第三種 云原生ServiceMesh架構的演進的問題。

SOA/ESB架構簡介和問題概覽

首先我們來看看 SOA/ESB 架構模式 在目前公有云上的典型參考架構。

如下圖所示,以華為云為例,以該模式部署應用時,其使用到的典型云服務為 彈性負載均衡 (ELB) + 彈性伸縮(AS,包含ECS)。在這種場景下:

·需要發起調用的客戶端程序,通過配置好的域名或地址,直接調用到ELB上,通過ELB去調用到后端的ECS服務器。

·ELB上需要配置后端服務器的多個IP地址。當然,一般這類操作可以簡化為添加某類彈性伸縮組。這樣,當ECS發生彈性伸縮時管理員無需處理ELB配置,ELB即可自動刷新ECS的IP列表的變化。

(配置操作可參見:https://support.huaweicloud.com/usermanual-as/as_01_0102.html)

044cebf2-de08-11ed-bfe3-dac502259ad0.png

值得注意的是,以上的模式可能存在幾種變種。

·對于ELB,可能會采用API網關替代,或者用戶自建的KONG, APISIX,Envoy等,具體取決各個企業的自身業務場景。例如,某些互聯網公司傾向于采用企業自建的KONG,其主要原因是除了基本的服務發現和負載均衡能力以外,網關還需要處理面向內部跨域調用的一些鑒權情況處理。

·對于彈性伸縮,可能也會直接采用Kubernetes的Deployment + HorizontalPodAutoscaler替代。這當然取決于企業內部的基礎架構采用情況,看是更傾向于使用虛擬機架構還是容器架構。

以上架構雖然在隔離性、安全性上存在一定優點,但是短板也非常明顯。

·性能和資源開銷。這個比較好理解,相對微服務架構,SOA/ESB架構上網絡增加了額外一跳,而且ELB的引入也會導致資源的額外消耗增多。

·運維成本。畢竟額外引入了一個ELB的組件,因此在微服務之間調用時,瓶頸在哪里,ELB是否需要擴縮容,都是問題。

045b7118-de08-11ed-bfe3-dac502259ad0.png ? ? ? ? ?

微服務和云原生架構改造方法和問題

對于如何改造 SOA/ESB 架構,朝微服務架構或云原生架構演進,業界也有很多方法。主要是以下兩類。

046af4bc-de08-11ed-bfe3-dac502259ad0.png

·通過修改代碼,將應用改造為微服務架構。例如直接在代碼中引入比如SpringCloud的服務注冊發現和負載均衡等組件。當然,這種改造往往也并不簡單,主要取決于現有應用已采用的開發框架等。比如應用本身沒有采用spring來進行開發,那么直接采用SpringCloud可能會為應用帶來海量的改造成本。

·采用istio方案,通過有限改造應用,將架構升級為ServiceMesh架構。之所以該方案說是有限改造,而不是無改造,也是因為在服務調用方式上,istio方案對應用并不是完全無限制。其至少需要在客戶端將調用的http調用地址改造成為k8s原生的服務地址,調用的服務治理才能被envoy有效接管。當然,改造完畢后,用戶在接下來在面向邊車的性能衰減,更復雜的調用運維問題上,恐怕一個也不會少。

綜上所述,兩種方案都存在比較明顯的短板。接下來分析下采用Sermant方式進行架構改造,如何彌補上述兩種方案的短板。

Sermant對SOA/ESB架構升級的思路

采用Sermant (https://sermant.io/zh/) 對SOA/ESB架構升級,本質上的最后的架構終態是Service-Mesh。但是因為采用的方法稍有不同,從而導致方案在性能和運維問題上都不存在短板。主要是以下兩點:

·首先,Sermant采用Java Agent來動態注入增強的服務邏輯治理,因此應用側理論可以做到完全不用改代碼。

·其次,由于Sermant的核心邏輯是以AOP (面向切面編程) 方式,Java Agent和業務屬于同一進程,因此在性能方面不存在sidecar形態的特別大的損耗。

Sermant方案架構如下圖所示。

048c7146-de08-11ed-bfe3-dac502259ad0.png

在核心技術點上,Sermant改造方案的功能主要有以下幾個方面:

·內置的服務注冊發現機制。(上圖中的第一點和第三點)

-插件本身會帶服務注冊功能,在Provider應用啟動的時候自動到注冊中心進行服務注冊。

- 在Consumer應用進行URL服務調用的時候,通過微服務服務發現+負載均衡機制替代原先的服務直調。

·域名到服務名(有時也稱應用名)的轉換。(上圖中的第二點)

- 服務發現時,由于原先的調用采用URL直調,并不包含應用信息。這就需要一個調用關系到應用名的映射。對于這塊內容,未來我們計劃做成了一個動態配置,存儲到配置中心里。這樣當有應用需要發起調用時,Sermant直接將URL轉換成應用名,就可以在注冊中心獲取響應的應用IP列表。

- 通過URL獲取Provider應用名后,由于在改造過程中,不用Provider應用并不是同批次發布攜帶Sermant Java Agent,因此還需要有個白名單機制,來配合灰度發布。

·增強的客戶端側負載均衡、重試、隔離、降級機制。(上圖中的第四點)

- 通過URL獲取Provider應用名后,由于在改造過程中,不用Provider應用并不是同批次發布攜帶Sermant Java Agent,因此還需要有個白名單機制,來配合灰度發布。

-此外,對于一些必要的東西向流量的治理能力,如服務間的3A認證等,也需要進一步在Sermant端補齊。

以上便是Sermant改造方案的主要功能點。另外,在實操中如何針對現有環境進行升級還是需要一定方法,避免對現有環境進行太大沖擊。以下詳細敘述。

采用Sermant

對SOA/ESB架構升級的方案實操

應用改造在具體局點上不可能一蹴而就,因此在具體上實施上肯定是一個慢慢灰度的過程。以Kubernetes容器場景為例,介紹下在上百個微服務應用上千實例的情況下,如何采用Sermant對SOA/ESB基于灰度進行安全可控的云原生架構升級。

04a427c8-de08-11ed-bfe3-dac502259ad0.gif

以下為準備工作:

準備步驟一:

自身應用是否支持。當前Sermant支持的微服務升級的Java框架可以在該文檔中查詢。如未支持,可以考慮給社區提Issue解決。

?參考鏈接:

https://sermant.io/zh/document/plugin/springboot-registry.html#%E8%AF%A6%E7%BB%86%E6%B2%BB%E7%90%86%E8%A7%84%E5%88%99

準備步驟二:

在Kubernetes中安裝Injector,方便以非侵入方式讓Java應用自動掛載Sermant Java Agent.

(本步驟可選。如跳過,則需要手動改變應用部署腳本加載Sermant Java Agent。)

?參考鏈接:

https://sermant.io/zh/document/user-guide/injector.html

以下介紹詳細實施過程。假設初始架構如下。一共三個App,其中App1通過ELB連接到App2和App3。為簡化表述,圖中為應用均為單實例,實際生產中的實例可能會有多個。

04a8ef74-de08-11ed-bfe3-dac502259ad0.png

接下來,在Kubernetes中對新版本的App1, App2進行發布(圖中為V2版本),并在發布時攜帶Sermant Java Agent,以及激活SpringBoot注冊插件。但是此時可以先不配置Provider白名單規則,因此發布后,應用流量應該還是走ELB,未發生任何變化。

04b4f422-de08-11ed-bfe3-dac502259ad0.png

接著在配置中心,將App2加入到白名單中。此時,對識別到App2的應用,掛有Sermant Java Agent的App1實例 (圖中的V2實例) 會對App2的實例以負載均衡方式直接發起調用。與此同時,App1訪問App3的流量沒有變化。

04c0522c-de08-11ed-bfe3-dac502259ad0.png

驗證成功后,刪除App1、 App2的V1版本,App1到App2的流量通過注冊中心的注冊發現,完全實現直連。同時,App1訪問App3的流量維持不變。

04cd0b52-de08-11ed-bfe3-dac502259ad0.png

至此,使用Sermant對App1、App2的云原生架構升級結束。后續其他App應用,可以按照類似方案,進行灰度升級,直至所有應用全部掛載上Sermant,完成微服務直連改造。

結束語

Sermant 作為專注于服務治理領域的字節碼增強框架,致力于提供高性能、可擴展、易接入、功能豐富的服務治理體驗,并會在每個版本中做好性能、功能、體驗的看護,廣泛歡迎大家的加入。

當前Sermant已在華為云云服務CSE中被集成,用戶可以在華為云的CSE云服務中使用相關功能。(點擊文末“閱讀原文”跳轉,了解更多相關功能)

戳“閱讀原文”,了解更多!


原文標題:技術速遞 | 分布式政企應用如何快速實現云原生的微服務架構改造

文章出處:【微信公眾號:華為DevCloud】歡迎添加關注!文章轉載請注明出處。


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

    關注

    218

    文章

    36003

    瀏覽量

    262084

原文標題:技術速遞 | 分布式政企應用如何快速實現云原生的微服務架構改造

文章出處:【微信號:華為DevCloud,微信公眾號:華為DevCloud】歡迎添加關注!文章轉載請注明出處。

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

掃碼添加小助手

加入工程師交流群

    評論

    相關推薦
    熱點推薦

    碼神之路Netty-從零實現RPC框架課分享

    面向未來的分布式基石:Netty 從零實現 RPC 框架全體系實戰 在微服務架構云原生技術大行
    的頭像 發表于 02-13 11:38 ?45次閱讀

    分布式能源管理物聯網解決方案

    ,構建全鏈路能源數據采集與管控體系,實現分布式能源的精細化管理與智能化運維。 方案架構 終端設備層:現場設備包括光伏逆變器、智能電表、電池管理系統(BMS)等各類能源設備,支持IEC61850、IEC101/103/104、DL
    的頭像 發表于 01-21 11:39 ?316次閱讀
    <b class='flag-5'>分布式</b>能源管理物聯網解決方案

    Istio服務網格生產環境性能調優的最佳實踐

    隨著微服務架構的普及,服務間通信的復雜度呈指數級增長。傳統的應用層負載均衡和服務發現方案已經無法滿足現代云原生應用的需求。Istio作為目前
    的頭像 發表于 01-20 15:40 ?206次閱讀

    分布式 IO 選型注意事項

    定義? 分布式IO是一種脫離傳統集中式 IO 柜,將輸入 / 輸出模塊分散部署在工業現場設備附近,通過工業總線(如 Profinet、EtherNet/IP、Modbus TCP 等)與 PLC、MES 等控制系統實現數據交互的工業控制設備。其核心
    的頭像 發表于 12-30 14:14 ?298次閱讀
    <b class='flag-5'>分布式</b> IO 選型注意事項

    分布式光伏環境監測站的技術架構與應用實踐

    分布式光伏環境監測站的技術架構與應用實踐 柏峰【BF-GFQX】一、系統技術架構解析 分布式光伏
    的頭像 發表于 10-13 10:05 ?578次閱讀
    <b class='flag-5'>分布式</b>光伏環境監測站的<b class='flag-5'>技術</b><b class='flag-5'>架構</b>與應用實踐

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

    隨著跨境業務和分布式應用的普及,越來越多的企業在海外VPS上構建微服務架構,以提升系統擴展性和靈活性。然而,微服務化帶來了一個新的挑戰:日志數據分散在多個
    的頭像 發表于 08-27 17:13 ?567次閱讀

    【節能學院】Acrel-1000DP分布式光伏監控系統在奉賢平高食品 4.4MW 分布式光伏中應用

    分布式光伏本地和遠程通信方案,并研究分布式光伏采集模型的構建、多源數據融合估計、面向分布式光伏的有功、無功功率優化控制等關鍵技術,實現了對小
    的頭像 發表于 08-23 08:04 ?3492次閱讀
    【節能學院】Acrel-1000DP<b class='flag-5'>分布式</b>光伏監控系統在奉賢平高食品 4.4MW <b class='flag-5'>分布式</b>光伏中應用

    分布式光伏發電監測系統技術方案

    分布式光伏發電監測系統技術方案 柏峰【BF-GFQX】一、系統目標 :分布式光伏發電監測系統旨在通過智能化的監測手段,實現分布式光伏電站的
    的頭像 發表于 08-22 10:51 ?3195次閱讀
    <b class='flag-5'>分布式</b>光伏發電監測系統<b class='flag-5'>技術</b>方案

    宏集分享 | 集中式架構還是分布式架構?SCADA架構選型的新趨勢

    HongraxIIoT在工業數字化不斷推進的今天,SCADA系統早已不僅是簡單的數據監控工具,它正在成為保障企業運行效率、安全性和業務連續性的戰略核心。而“選擇集中式、分布式還是混合式架構?”也正
    的頭像 發表于 08-08 18:15 ?661次閱讀
    宏集分享 | 集中式<b class='flag-5'>架構</b>還是<b class='flag-5'>分布式</b><b class='flag-5'>架構</b>?SCADA<b class='flag-5'>架構</b>選型的新趨勢

    電商API的微服務架構優化策略

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

    電力系統分布式故障實時定位技術——精準抗干擾快速響應

    在電力系統中,分布式故障的快速定位與隔離對保障電網穩定運行至關重要。傳統的故障檢測方法受限于干擾強、定位延遲高的問題,難以滿足現代智能電網的高可靠性需求。我們的分布式故障實時定位技術
    的頭像 發表于 07-11 10:43 ?583次閱讀
    電力系統<b class='flag-5'>分布式</b>故障實時定位<b class='flag-5'>技術</b>——精準抗干擾<b class='flag-5'>快速</b>響應

    云原生環境里Nginx的故障排查思路

    本文聚焦于云原生環境下Nginx的故障排查思路。隨著云原生技術的廣泛應用,Nginx作為常用的高性能Web服務器和反向代理服務器,在容器化和
    的頭像 發表于 06-17 13:53 ?968次閱讀
    <b class='flag-5'>云原生</b>環境里Nginx的故障排查思路

    從 Java 到 Go:面向對象的巨人與云原生的輕騎兵

    不同,Go 通過編譯為 單一靜態二進制文件實現快速啟動和低內存開銷 , 以25個關鍵字強制代碼簡潔性 , 用接口組合替代類繼承 , 以顯返回error取代異常機制 和 輕量級并發模型
    的頭像 發表于 04-25 11:13 ?644次閱讀

    分布式光伏如何實現防逆流?

    分布式光伏如何實現防逆流
    的頭像 發表于 03-24 13:31 ?818次閱讀
    <b class='flag-5'>分布式</b>光伏如何<b class='flag-5'>實現</b>防逆流?

    分布式dtu和分散dtu說明介紹

    分布式dtu和分散dtu有保護測控單元和綜合通訊單元組成,自愈采用基于通用面向對象變電站事件(GOOSE)的高速網絡通信方 ,利用配電網中相鄰開關的故障信息,快速定位故障位置并自動
    的頭像 發表于 03-19 22:25 ?3359次閱讀
    <b class='flag-5'>分布式</b>dtu和分散<b class='flag-5'>式</b>dtu說明介紹