關於工作流模型思考

最近開發需求比較密集,特別是對接多個外部系統模塊的需求。

平時工作建立在多個外部系統之上,爲了替代人工操作,避免人在多個系統中輸入數據的錯誤、不一致,減少重複性工作,需要有一個粘合系統。

由於現有的多個系統沒有開放數據接口,加之工作流程多,使得這個需求難度變大,如何確保一個流程完整的執行完畢,並且在中間出現異常之後能夠斷點繼續,這就需要一個工作流模型。

一堆數據在多個系統中進行流轉,A系統的輸出作爲B系統的輸入,包括貫穿全流程的一些數據。如何存儲這些數據,如何從斷點處恢復執行,是第一個難點。

再一個難點就是流程的回退,由於外部系統不可控,在執行異常之後無法回退以及向下執行,導致整個流程無法回退、撤銷,如果重新開始就需要記錄最初的輸入,繼續向後執行。

反覆思考了一週多時間,就連夢裏也在思考如何對現有的業務流和外部業務系統進行抽象建模,如何分層解耦,如何對數據進行定義組織。

今天雖然初步的實現了一個工作流自動化,但是定製化程度高,不利於開發其他工作流。在維持目前工作正常開展的情況下,繼續對這個工作流進行重構。

眼看着數據量劇增,需要對底層架構做些調整了,爲應對未來的高併發,現在也要着手實施了。

工作太忙了,都忘記喫我的榴蓮千層了……

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章