日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

微服务架构(二):融入微服务的企业集成架构

發布時間:2025/3/12 编程问答 17 豆豆
生活随笔 收集整理的這篇文章主要介紹了 微服务架构(二):融入微服务的企业集成架构 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
上一篇文章介紹了微服務架構的起源、定義、通用特性、常見概念誤區、微服務架構與SOA架構比較、微服務架構收益以及企業引入微服務架構的策略。


本文將介紹融入微服務的企業集成架構的演進,并描述交互式系統的微服務模式及相關技術決策,然后給出了一個具體的微服務架構業務應用的例子。


?


交互型系統(System
of Engagement)與記錄型系統(System of Record)


隨著移動互聯網的快速發展,企業除了需要提供傳統核心IT系統能力之外,還需提供客戶與合作伙伴友好型的以交互為重點的創新及交互式系統。這兩類系統的特性與稟賦完全不同,因此企業IT的支撐邁入了雙速IT時代。





企業微服務架構的引入主要集中在以下兩類系統:


  • 記錄型系統:是指傳統的應用系統,對應用所關注領域的信息進行增刪改查作為應用的核心能力。如CRM、ERP、OA等系統。記錄型系統使用的往往是一些傳統的經典IT技術構建,往往更難改變,其集成難度也較高。


  • 交互型系統:是指以與用戶交互為主要目的而開發的應用系統。如各種移動應用、微信、微博等等。交互型系統更多地會采用現代的各種新技術語言及運行時部署,具體高度的敏捷性,通過簡單的現代化連接即可實現集成。


?


融入微服務的企業集成架構


不同的企業背景應該采用不同的微服務架構引入策略:


  • 對大型的成熟企業而言,由于本身已有大量在建的企業IT系統,因此決定了微服務架構僅是其多種應用架構風格之一,大型企業在服務總線與能力開放網關的集成架構下,可以首先從交互型系統入手引入基于微服務架構的應用,逐步積累面向微服務的開發運維經驗。另外,對于部分新建的記錄型系統,也可以考慮采用微服務架構進行構建,并通過服務總線等SOA集成技術實現與企業遺留系統的信息交互。





  • 對于初創企業而言,由于其沒有任何歷史包袱,因此可以考慮將企業范圍的整體架構以(微)服務架構為基礎進行搭建。





  • 大型成熟企業在企業集成架構及不同應用(整體式應用與微服務應用)架構風格中使用的技術及中間件也各有不同。例如:在整體式應用中往往更強調應用的交易完整性、安全性、數據的一致性等高標準特性,而微服務應用則更強調系統功能的快速上線。因此,這導致了這兩類系統所偏好的技術及中間件產品會有差異。下圖是在一個企業集成架構中,不同應用及集成所對應的IBM軟件產品的示例:





  • 整體式應用使用WAS ND集群化企業級應用服務器和DB2數據庫。


  • 微服務應用使用輕量級的WAS Liberty、Node.js,以及NoSQL數據庫。


  • 甚至可以考慮將其部署至公有云PaaS平臺(如IBM Bluemix)上以充分利用PaaS平臺上眾多的服務能力。


  • 集成組件使用企業級的IBM Integration Bus服務總線以及API Connect能力開放網關解決方案。


  • ?


    • 系統云化方面,整體式應用與微服務應用也具有不同的偏好。因此,未來的企業必然朝著混合型部署架構演進:


    • 企業級整體式應用部署偏好于系統專用資源模式,也可根據各個應用特性評估是否可遷移至企業私有云之上以實現企業IT資源優化部署。


    • 微服務應用則偏好于生于云端的PaaS平臺,使其可方便地使用各種就緒的底層服務,并采用多樣化的編程語言和持久化技術。


    ?


    ?


    交互式系統的微服務模式


    交互式系統微服務模式包括多渠道交互層業務邏輯層


  • 多渠道交互層通常采用“后端服務前端”的設計模式。


  • 業務邏輯層則采用微服務架構,通過垂直服務而非水平分層實現對不同業務功能的解耦。

    ?


  • 各業務服務微服務的依賴關系是微服務架構設計的一個考慮重點,一個業務服務可以委托給其他業務服務,但需盡量避免循環依賴。需要注意的是每個微服務仍然實現了一個完整的任務,而不是傳統的水平分層模式。





  • ?


    交互式系統微服務架構應用的技術決策


    ?1、編程語言的考慮:


  • Java:鑒于Java有廣大的受眾以及其商業軟件的企業級保障能力,以及在市場上能夠非常容易找到優秀的開發人員,并且Java已開始加速增加最新和最現代的語言特性如Lambda等,Java仍然是實現業務邏輯層的不二之選。其他語言技術雖然層出不窮,各有優點,但并沒出現新的統治級編程語言。


  • Node.js:在交互層,Node.js是JavaScript服務端的解決方案,結合其他技術組成的MEAN全堆棧javascript開發框架Mongo
    DB – 簡單的NoSQL數據庫,使用JSON風格存儲文檔;
    ExpressJS
    – 是一個Web應用框架,提供有幫助的組件和模塊幫助建立一個網站應用;

    AngularJS
    – 是一個前端MVC框架;Node.js -是一個并發異步事件驅動的Javascript服務器后端開發平臺。),使Node.js正成為REST服務實施和構建交互式系統方面實上的解決方案





  • ?


    ?2、多樣性持久化考慮:使用合適的NoSQL技術存儲持久化數據。





    ?


    交互式系統基于PaaS云端部署方式:隨著PaaS云技術的日益成熟,企業可以考慮將交互式系統部署于云端,以充分利用PaaS平臺上的各種服務。可將應用的Web/移動層遷移到云端,交互模型存儲到云端,將記錄型系統能力以API形式開放出來實現與交互式系統的連接。





    ?


    ?


    交互式系統微服務架構例子


    • 航班預訂應用微服務架構設計





    ?


    • 航班預訂應用采用多樣化技術滿足不同的業務技術特性。


    ??


    以上內容介紹了融入微服務的企業集成架構的演進,并描述交互式系統微服務模式及相關技術決策,然后給出了一個具體微服務架構業務應用的例子。

    總結

    以上是生活随笔為你收集整理的微服务架构(二):融入微服务的企业集成架构的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。