精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

對微服務編排引擎和應用場景的再思考

開發 前端
如果看我前面的文章大家會注意到,在談低代碼開發平臺,談中臺支撐的上層應用構建,談Serverless無服務器架構的時候,都共同談到一個關鍵能力即:微服務編排。

 在底層共性技術服務和中臺業務服務能力具備后,上層應用可以根據可重用的服務快速的構建的,但是不可能所有場景都簡單的簡單調用一個API接口服務就能夠實現。當存在一定業務規則需要處理的時候,往往都涉及到調用多個API接口服務,中間還涉及到基礎的邏輯處理,判斷分支往往才能夠完成。

[[415958]]

如果讓前端應用開發來處理這種事情,又變成了需要大量編寫腳本代碼,而且存在共性領域服務邏輯對外泄露的問題。

服務編排實際上就是對基礎的業務處理流程,步驟,規則邏輯進行封裝,然后提供一個封裝后的組合服務或領域服務API接口能力給前端應用開發。這個和傳統SOA架構里面談到的通過BPEL來進行SOA服務編排思路完全一致。

當前微服務編排引擎來源

 

對微服務編排引擎和應用場景的再思考

 

對于開源的微服務編排引擎,最早大家比較熟悉的是Netfix Conductor,我在前面也專門寫過文章分析和說明,但是這個開源版本本身更多的是面向開發人員使用,很難做到前端的可視化靈活配置,而且也沒有可視化設計能力,只有編排完成后的可視化監控。

從當前主流的一些微服務編排引擎來看,主要包括如下幾類發展演進。

其一是從傳統的工作流引擎或BPM引擎積累開始做微服務編排引擎,比如當前開源的Zeebe,其開發團隊即來源于知名的Activiti工作流和BPM引擎。

 

對微服務編排引擎和應用場景的再思考

 

其二是傳統的ESB服務總線上層,對于ESB總線本身就有輕量服務編排功能,因此從ESB總線來發展微服務編排引擎。

 

對微服務編排引擎和應用場景的再思考

 

其三是基于分布式任務調度系統,自動化事件事物觸發編排發展出來的微服務編排引擎,要明白微服務編排最終核心仍然是各個活動或任務的處理。類似當前在物聯網領域應用廣泛的Node-Red編排引擎屬于這種方式。

如何理解微服務編排場景?

當我重新思考這個問題的時候,進一步將編排場景進行分類理解。

首先第一類就是簡單的服務組合,服務拆分,數據裁剪,數據映射等,這些內容可以通過服務編排來解決,比如輸入一個供應商編碼,同時調用兩個API接口服務,一個是查詢供應商基本信息,一個是查詢供應商的訂單明細列表信息。在調用返回后將結果整合為一個Json輸出給調用方。

對于這類場景實際就是對應到傳統ESB輕量服務編排能力,并不涉及到復雜的業務規則,業務邏輯處理,也不涉及到類似BPEL自動化業務流的處理等。

其次是基于業務處理流程的多個服務編排處理,這個場景和傳統SOA架構里面的BPEL很類似,就是要完成一個業務功能,你會發現本身就需要調用多個接口才能夠完成,而且這些API接口調用本身有先后關系,有調用邏輯和分支判斷,上游API接口服務的輸出往往會變成下游API服務的輸入,形成核心的串行邏輯結構。因此你需要通過一個編排功能將多個服務編排在一起,最終暴露一個服務。

對于這類場景一個典型就是一個前端功能實現,當完成相關書籍錄入后,點擊一個按鈕觸發事件,傳統代碼開發方法一定是在按鈕觸發事件方法中編寫具體的代碼實現邏輯,這個邏輯本身也涉及到調用多個API接口服務,當然也存在分支判斷邏輯等。

而新的低代碼開發或Serverless無服務器化下,我們更加希望點擊代碼只需要調用一個編排完成的組合服務能力即可。前端開發人員并不需要知道內部多個API服務編排組合的規則邏輯。那么這個場景下就需要先通過微服務編排引擎形成一個組合服務API,然后再暴露給前端應用使用。

我們最近做了什么事?

最近在實現微服務編排能力的時候,前期也進行了大量的選型,最早的計劃是整體從零開始,基于已有的圖形化設計器的基礎來做服務編排引擎。

但是分析完成后整體從零開始做仍然難度不小,不僅僅是API服務本身的組裝,拆分,規則邏輯處理,更加重要的是需要底層有一個完整的任務調度引擎或事件處理引擎。對于消費方系統來說看到的是一個組合服務API,但是其內部本身是多個服務組裝,組合完成的,內部已經變成一個消息或事件驅動的異步處理系統。

因此在這個過程中你需要去處理任務調度,處理異常容錯,處理分布式事務和回退機制。所有的這些底層邏輯要從零開始實現本身還是有一定難度的。

Node-RED是一種基于流的編程工具,它有一個可視化編輯器,允許將節點連接在一起創建流。滿足微服務編排最基礎的可視化服務編排需求。Node-RED最初是IBM在2013年末開發的一個開源項目,以滿足他們快速連接硬件和設備到Web服務和其他軟件的需求——作為物聯網的一種粘合劑,它很快發展成為一種通用的物聯網編程工具。

因此通過選型后,最終選擇了Node-Red來實現微服務編排,當時我們規劃的接口服務串行,并行,數據合并整合,規則處理,異常捕獲,日志記錄等需要都能夠實現。

整體來講Node-Red應對簡單的服務組裝,組合沒有任何問題。但是如果存在類似BPEL一樣的自動化業務流處理,仍然不合適。畢竟Node-Red這個開源項目誕生的目的仍然是為了應對物聯網領域常見的任務和事件處理,重點是多個任務或事件的編排而非類似業務系統功能開發中的流程編排。

微服務下Http API接口編排關鍵點

我們這里談的微服務編排更多的是指對微服務暴露的Http API接口的可視化編排和組裝。這個是談論這個點的前提。

對于微服務編排引擎底層前面已經談到重點是消息中間件,分布式任務調度和執行邏輯,狀態機等。那么在這個底層邏輯上面進行微服務API編排的時候還需要具備或擴展哪些關鍵能力,初步思考如下。

其一是對于Json格式的處理。

也就是服務編排中會經常遇到Json格式的拆分,合并,數據映射等操作,一個編排引擎必須在這個方面相當靈活。Json格式的字符串本身也是存在規則,是可以模板化的,只有模板化后才方便進行處理。同時一個Http接口調用本身存在輸入,輸入的內容在后續多個編排節點都可能使用到,因此還需要支持輸入信息的參數化處理。

這些參數對于整個組合服務運行實例中的全局參數,在后續任何節點都可以引用到。

比如當獲取訂單信息的時候,我們希望同時返回訂單對應的供應商的基本信息。也就是先調用獲取訂單信息,拿到供應商編碼后再去調用獲取供應商信息,最好將供應商信息結果拼裝到整個訂單信息中返回。

  1. //調用GetOrderInfo獲取Order信息  
  2. //根據返回的supplierid發起對GetSuplier接口調用  
  3. //將返回的信息作為子對象拼裝到完整Json里面     
  4.        orderInfo  
  5.           {  
  6.                orderid  
  7.                ordername  
  8.                supplierid  
  9.                    {  
  10.                         suppliername:  
  11.                         suppliertype:  
  12.                         address:  
  13.                          contactphone:  
  14.                     }  
  15.             }  

可以看到,編排的時候同時調用多個API接口并不難,難的地方是如何完成結果的映射,快速,靈活的組裝,這個能力反而更加關鍵。

在傳統的SOA服務編排里面,經常會采用類似Xslt模板來完成數據的映射,組裝等操作,這種參數化模板映射的思路完全可以借鑒。

其二就是業務規則和邏輯處理

在常規的SOA服務組裝中,一般會將BPEL和規則引擎結合,來實現復雜業務規則和邏輯的處理。而對于微服務編排,本身就是一種偏輕量的編排,不適合處理過于復雜的業務規則和邏輯。

因此服務可視化編排中,能夠支撐最簡單額分支判斷邏輯,條件組合邏輯就可以了。而對于更加復雜的邏輯建議是單獨先實現一個規則處理的原子服務API接口,再應用到微服務編排中去。

對于低代碼開發平臺的應用,我在前面也提到過這個觀點。

即首先低代碼開發平臺應該是基于服務分層的思路,將前端開發和后端服務能力區別開,通過服務層來徹底解耦。其次就是在服務層提供可視化服務編排能力,提供編排后的組合服務給前端應用調用,減少前端應用調用難度。

但是如果出現了復雜的業務規則處理邏輯,這個就不要在服務編排里面去處理,還是單獨實現一個規則處理API接口服務,再暴露出來給上層應用或編排設計器使用。

其三就是分布式事務處理機制

由于將多個微服務API接口服務編排在一起,一定會產生分布式事務問題。

當前的編排技術實際本身又為了完全同步等待的方式和異步類似任務事件和狀態機處理機制。在前面我們談到兩個場景。

如果是簡單的服務組合,拆分,可以用同步模式。但是如果是類似業務流程處理的多個服務串行編排,建議是采用異步任務事件處理機制。底層也需要消息中間件和中間態數據的存儲機制來進行支撐。

實際在微服務編排里面的分布式事務處理,最佳的方式仍然是基于冪等規則下的事務補償。

我們一個最簡單的例子。在訂單保存的時候需要扣減庫存。

這個時候涉及到SaveOrderAPI接口和FreezeStockAPI兩個接口,對于扣減庫存有一個對應的逆操作接口ReleaseStockAPI。

那么你在進行微服務編排的時候實際需要將這三個接口都編排進去,而且還需要增加判斷規則邏輯,即當SaveOrderAPI失敗的時候進行ReleaseStockAPI,庫存扣減回退操作。

那么是否有一種方式將這個過程簡化。

即涉及到分布式事務的場景,我們對任何一個API接口服務都需要同時配置這個服務的逆操作回退API接口服務。那么當下游服務操作在出現異常的時候,由整個微服務調度機制通過調研逆向API接口,自動發起多上游服務的回退操作。

如果回退操作仍然失敗,那么發送異常處理通知或郵件,通知人工介入操作。

第四點是微服務鏈路監控

在談微服務的時候經常會談到微服務鏈路監控,簡單來說就是前端是調用一個按鈕處理,但是按鈕方法的實現邏輯里面可能會調用多個微服務API,因此需要對整個鏈路進行監控,以方便進行性能問題分析,異常問題排查。

在使用微服務編排后,按鈕原來的處理邏輯已經轉換到微服務編排和設計里面去完成。一個編排后的微服務在內部可能會調用多個微服務API接口,形成微服務API的接口調用鏈。而這個內容仍然需要提供完整的監控,日志查看能力。

這個和工作流引擎里面的流程監控類似。

即微服務編排完成的也是一個流程,是自動化的業務流,中間調用多個API接口服務,因此需要對整個自動化業務流做到端到端監控。通過微服務流程實例進入后,能夠詳細看到當前執行到哪個環節,如果出現異常也能夠快速地排查到具體的錯誤異常日志。

 

責任編輯:華軒 來源: 今日頭條
相關推薦

2014-12-10 10:36:23

IaaS云應用場景

2015-08-04 17:45:54

Docker應用

2021-01-12 09:38:02

微服務服務組合編排

2020-11-13 10:45:44

微服務架構數據

2023-10-30 00:11:48

微服務負載均衡場景

2022-10-08 07:31:26

微服務編排體系

2023-10-26 23:35:02

SSH登錄部署

2015-08-03 13:36:40

Docker技術優勢應用場景

2012-10-23 09:32:07

2015-07-16 11:57:33

2019-12-06 13:55:28

人社部大數據應用場景

2011-05-17 15:24:18

Shibboleth認證

2011-03-07 15:24:17

LBS

2016-04-11 15:49:40

人工智能大數據應用IBM

2018-05-25 13:04:21

UES應用場景

2021-09-02 18:47:02

redis存儲中間件Remote Dict

2018-04-02 14:50:22

Java多線程應用場景

2022-09-05 14:46:01

元宇宙區塊鏈人工智能

2021-06-28 10:13:41

虛擬服務器物理服務器服務器
點贊
收藏

51CTO技術棧公眾號

每日在线更新av| 国产精品久久久久久久av大片| 特黄特色免费视频| 成人小电影网站| 国产精品国模大尺度视频| 91精品啪在线观看麻豆免费 | 色播一区二区| 日韩欧美一区二区三区| 亚洲视频在线二区| 六月婷婷综合网| 免费精品99久久国产综合精品| 九九精品在线视频| 精品人妻无码一区二区三区换脸| 成人网av.com/| 色综合咪咪久久| 老司机午夜网站| 国产一级片在线| 国产乱子伦一区二区三区国色天香| 久久乐国产精品| 性色国产成人久久久精品| 国产精品对白久久久久粗| 欧美午夜精品理论片a级按摩| 日本黄色片一级片| 免费福利在线观看| 成人动漫精品一区二区| 国产美女精品视频| 中文字幕一区二区人妻视频| 欧美国产另类| 久久精品成人欧美大片古装| 91视频在线网站| 欧美sss在线视频| 欧美一区二区美女| 第一区免费在线观看| 欧美天堂视频| 欧美日韩精品国产| 国产毛片久久久久久国产毛片| 91xxx在线观看| 99久久精品国产观看| 97伦理在线四区| 91精东传媒理伦片在线观看| 日韩成人一区二区三区在线观看| 51午夜精品视频| 中文字幕第28页| 欧美+亚洲+精品+三区| 久久中文精品视频| 91香蕉视频在线播放| 色一区二区三区四区| 一本大道久久加勒比香蕉| 亚洲专区区免费| 婷婷综合福利| 亚洲欧美精品在线| 中国美女乱淫免费看视频| 久本草在线中文字幕亚洲| 日韩精品一区二区三区在线观看 | 无人区在线高清完整免费版 一区二| 亚洲午夜电影网| 青青草视频在线视频| 超鹏97在线| 亚洲理论在线观看| 国产传媒久久久| av电影院在线看| 精品日韩中文字幕| 欧美日韩一区二区在线免费观看 | 99久久婷婷国产综合精品电影√| 国产亚洲精品美女久久久久| 第一次破处视频| 第一sis亚洲原创| 日韩在线一区二区三区免费视频| 中文字幕乱码av| 欧美影院一区| 国模精品视频一区二区三区| 国产成人无码精品| 视频一区免费在线观看| 国产精品一区二区三区成人| 国产精品嫩草影院精东| 懂色av中文一区二区三区 | 可以免费看毛片的网站| 99久久精品国产麻豆演员表| 日韩hmxxxx| 日本精品一区二区三区在线播放| 亚洲日本中文字幕区| 国产免费一区二区视频| xxx欧美xxx| 欧美日韩大陆在线| 91精品又粗又猛又爽| 香蕉一区二区| xx视频.9999.com| 久久精品久久精品久久| 日韩电影免费在线看| 91青青草免费观看| 欧美成人免费| 亚洲欧美韩国综合色| 免费av手机在线观看| 色豆豆成人网| 精品欧美一区二区在线观看| av网站免费在线播放| 婷婷精品进入| 五月天亚洲综合| 欧美性猛交xxxx乱大交少妇| 婷婷久久综合| 国模精品一区二区三区色天香| 国产婷婷色一区二区在线观看| 蜜桃在线一区二区三区| 成人午夜影院在线观看| 蜜芽tv福利在线视频| 亚洲欧洲精品天堂一级 | 青青草原成人在线视频| 国产精品久久影视| 久久久噜噜噜久久人人看| 一本一生久久a久久精品综合蜜| 丁香花在线观看完整版电影| 中文字幕免费播放| 欧美一级片网址| 亚洲国产高清福利视频| 欧美午夜激情影院| 精品96久久久久久中文字幕无| 国产精品成久久久久三级| 午夜精品久久久久久久爽| 久久久久国产成人精品亚洲午夜| 欧美三级午夜理伦三级老人| 欧美xxx视频| 亚洲第一页在线| 四虎永久免费在线| 日本系列欧美系列| 精品无码久久久久国产| 午夜小视频福利在线观看| 在线观看成人小视频| 亚洲熟女一区二区| 亚洲欧美综合| 亚洲一区二区三| 欧美日韩欧美| 欧美色老头old∨ideo| 特大黑人巨人吊xxxx| 亚洲成人原创| 国产不卡一区二区在线观看| 黄色av网站在线播放| 色天使色偷偷av一区二区| 精品无码av一区二区三区| 亚洲不卡av不卡一区二区| 国产成人一区二区| 欧洲成人av| 狠狠躁夜夜躁久久躁别揉| 国产香蕉精品视频| 伊人情人综合网| 成人欧美一区二区三区黑人| 尤物网在线观看| 欧美日韩五月天| 亚洲无人区码一码二码三码的含义 | 激情综合亚洲| 国产精品成人观看视频免费| 免费在线观看的电影网站| 日韩一区和二区| 极品久久久久久| 国产一区在线观看视频| 欧美日韩视频免费在线观看| 亚洲精品伦理| 久久精品小视频| 国产精品探花视频| 尤物在线观看一区| 日本天堂在线播放| 1024成人| 欧美乱偷一区二区三区在线| 欧美成人h版| 一区三区二区视频| 91丨九色丨丰满| 亚洲精品自拍动漫在线| 香蕉视频免费网站| 日韩亚洲在线| 日产中文字幕在线精品一区| 精品69视频一区二区三区| 精品国偷自产在线视频99| a级片在线免费看| 一区二区三区高清在线| 国产黄色三级网站| 日韩精品一二三四| 欧美日韩亚洲国产成人| youjizz亚洲| 日本一欧美一欧美一亚洲视频| 成黄免费在线| 91精品国产综合久久精品性色 | 亚洲一区二区中文字幕| 午夜伦理在线视频| 日韩精品中文字幕视频在线| 最近中文在线观看| 一区二区三区日韩精品| 狠狠人妻久久久久久综合蜜桃| 日日夜夜精品视频天天综合网| 一区二区不卡在线| 大伊香蕉精品在线品播放| 日韩女优人人人人射在线视频| 麻豆视频网站在线观看| 亚洲第一中文字幕| 欧美日韩 一区二区三区| 亚洲乱码中文字幕综合| 精品久久久久久中文字幕人妻最新| 蜜臀国产一区二区三区在线播放| 欧美a级免费视频| 国产成人短视频在线观看| 91在线观看网站| 亚洲精品.com| 欧美精品videos| 777电影在线观看| 亚洲精品久久7777777| 在线免费a视频| 精品欧美aⅴ在线网站| 亚洲熟女毛茸茸| 久久综合网色—综合色88| 国产精品久久久久久久99| 久久精品女人| 精品一二三四五区| 久久性感美女视频| 蜜桃传媒一区二区| 日韩精品成人在线观看| 国产精品网红直播| 伊人网在线播放| 欧美成人午夜激情在线| chinese偷拍一区二区三区| 欧美大片一区二区| 一区二区三区播放| 一本大道av一区二区在线播放| 欧美日韩亚洲国产另类| 中文字幕精品一区二区三区精品| 日本japanese极品少妇| 国产不卡免费视频| 中文字幕在线视频一区二区三区| 三级不卡在线观看| 久久精品午夜福利| 99国产精品久久久久久久成人热 | 日本道色综合久久| 国产成人一区二区三区影院在线 | 日韩精品在线免费观看| 亚洲黄色片视频| 91精品国产综合久久精品app| 波多野结衣日韩| 色综合天天天天做夜夜夜夜做| 亚洲激情视频一区| 亚洲一区二区欧美激情| 男女羞羞免费视频| 亚洲欧美韩国综合色| 国产午夜精品理论片| 国产精品久久久久久久蜜臀| 一道本在线观看| 久久精品亚洲麻豆av一区二区| 菠萝菠萝蜜网站| 91网址在线看| 日韩 中文字幕| 99久久精品国产网站| 人妻在线日韩免费视频| 91在线播放网址| 亚洲一区二区三区无码久久| 91在线精品一区二区| 日韩av一二区| 久久你懂得1024| 免费观看a级片| 国产精品人成在线观看免费| 国产主播av在线| ...av二区三区久久精品| 黄视频网站免费看| 一区二区三区免费看视频| 久草福利资源在线观看| 午夜久久久久久久久久一区二区| 亚洲国产综合久久| 欧美日韩中文字幕日韩欧美| 国产一级淫片a视频免费观看| 欧美小视频在线| 波多野结衣mp4| 欧美日韩精品免费| 国产人妻精品一区二区三| 日韩欧美区一区二| 懂色av一区二区三区四区| 亚洲精品99久久久久中文字幕| 日本中文字幕一区二区有码在线 | 精品动漫一区| www.国产区| 久久99国内精品| 看全色黄大色黄女片18| 久久久久久黄色| 国产精品69久久久久孕妇欧美| 一区二区三区四区高清精品免费观看| 日韩免费不卡视频| 在线观看视频欧美| 国产夫妻在线观看| 亚洲男人的天堂在线播放| 在线国产91| 国产69精品久久久久99| 成人做爰免费视频免费看| 91视频99| 国产精品一在线观看| 国内精品国产三级国产99| 午夜在线视频观看日韩17c| 在线观看免费不卡av| av动漫一区二区| 日韩免费av一区| 精品久久久久久国产91| 一级黄色片在线| 亚洲国产精品资源| 1024国产在线| 97视频com| 国产精品国产亚洲精品| 欧美成熟毛茸茸复古| 亚洲最新色图| 久草在在线视频| 国产成人精品综合在线观看| 在线免费观看视频| 天天综合网天天综合色| 国产又爽又黄免费软件| 亚洲人成亚洲人成在线观看| 四虎影视成人| 国产精品丝袜久久久久久不卡| 激情小说一区| 国产av第一区| 麻豆国产精品777777在线| 老熟妇精品一区二区三区| 亚洲日本一区二区| 国产精品午夜一区二区| 日韩禁在线播放| 美女日批视频在线观看| 91精品国产综合久久香蕉最新版 | 国产精品视频免费播放| 91精品国产91热久久久做人人| 福利在线午夜| 日韩av色在线| 欧美人体视频| 农民人伦一区二区三区| 国产麻豆精品视频| 成人欧美一区二区三区黑人一 | 国产精品久久网站| 免费av中文字幕| 精品一区二区三区三区| 成人在线高清免费| 99视频日韩| 女人香蕉久久**毛片精品| 波多野结衣在线免费观看| 国产精品美女久久久久久久久| 国产一区二区视频免费| 亚洲欧美日韩天堂一区二区| 免费h在线看| 精品久久sese| 最新日韩av| 亚洲啪av永久无码精品放毛片 | 色综合视频一区二区三区日韩| 欧美精品七区| 麻豆精品91| 欧美日韩高清丝袜| 在线视频综合导航| 国产乱理伦片a级在线观看| 国产成人免费av电影| 蜜臀av免费一区二区三区| 欧美日韩第二页| 久久久久久久久久久99999| 神马久久久久久久 | 99久久综合狠狠综合久久止 | 久久久极品av| 动漫一区二区三区| 2021国产视频| 丰满放荡岳乱妇91ww| 久久久精品免费看| 亚洲精品视频久久| 免费污视频在线一区| 亚洲自拍的二区三区| 国产揄拍国内精品对白| 欧美日韩成人免费观看| 欧美精品一区二区三区一线天视频 | 91 中文字幕| 欧美久久精品一级黑人c片| 一区二区中文字幕在线观看| 久久综合色视频| 国产欧美日韩久久| 国产麻豆免费视频| 欧美激情欧美激情| 久久精品国产亚洲5555| aⅴ在线免费观看| 国产精品传媒入口麻豆| 国产成人av免费看| 91wwwcom在线观看| 日本精品三区| 无码人妻丰满熟妇区毛片蜜桃精品 | 91精品韩国| 最新黄色av网站| 99精品欧美一区二区三区小说 | 久久激情久久| 国产高潮流白浆| 日韩电影免费在线观看中文字幕| 日韩高清成人| 日韩精品视频在线观看视频| 久久久综合激的五月天| 92久久精品一区二区| 久久免费视频网| 成人羞羞网站| 亚洲香蕉中文网| 欧美日本在线视频| 成入视频在线观看| 亚洲午夜在线观看| 成人av电影在线网| 亚洲影院一区二区三区| 97碰碰碰免费色视频| 国产精品久久久久久| 久久精品综合视频| 欧美电影免费观看完整版| 本网站久久精品|