1. 程式人生 > >Netflix Conductor流程系統(一):簡介

Netflix Conductor流程系統(一):簡介

Conductor是Netflix公司構建的基於雲的微服務編排引擎,主要用於構建公司各種業務流程。

目的:

我們使用Conductor幫助我們在Netflix上編排基於微服務的流程,它具有以下特點:

1、可以建立複雜的流程/業務流,並且可以用微服務實現實現其中的單個任務。

2、使用JSON DSL描述的工作流藍圖。

3、為這些流程流提供可見性和可追溯性,即可以跟蹤和管理工作流。

4、可以暫停、恢復和重新啟動任務。

5、允許對現有的微服務進行更好的重用,從而提供更容易的管理。

6、視覺化的使用者流程介面。

7、支援同步處理所有任務

8、支援百萬級併發的處理能力

9、支援由客戶端抽象的佇列服務

10、支援HTTP或其他傳輸方式,如gRPC。

為什麼不使用對等編排?

傳統的對等任務編排很難適應業務規模和複雜性的增長,Pub/sub模型僅適用於一些簡單的流程,並且其中有很多問題:

1、流程流被巢狀在多個應用程式碼內。

2、通常,在輸入/輸出、SLAs等方面存在緊密耦合和假設,因此很難適應不斷變化的需求。

3、幾乎沒有辦法系統地回答:“程序完成情況”。