緩慢,也許是在加速的前夕,重塑自我

2022-08-23 11:33:12 字數 1633 閱讀 2246

2019,緩慢前行,基本完成工作流引擎改造,全面引入rabbitmq訊息元件,為資料庫io消峰帶來一定的幫助;引入基於時序的監測任務,為工作流引擎打通資料自我修復機制;引入獨立的工作流訊息體系,為管理系統內建任務辦理提供小資料量查詢方案;引入執行庫概念,使高頻使用資料獨立,提公升工作流引擎狀態判定響應,並降低因高頻io操作對資料庫的壓力;引入沉積庫概念,為低頻使用資料提供獨立儲存......

經過改造,經過4年構建,改造的工作流引擎基本達穩定執行階段。在這4年裡,經歷過流程執行異常的揪心,經歷過不斷膨脹的業務接入壓力,經歷過為適用客戶企業發展而進行的次次次更新。經過不斷的調整/優化/重構,產品變得更為穩健/高效,適用能力不斷延伸,只是**中不斷在增加記錄著我的簽名,在每乙個改造點,留下了自己印記......

4年裡【工作流】成為不被歡迎的代名詞,公司80%的運維量來自於流程流轉支援.....................心疼運維同學們.

年初很是糾結,工作流到底要怎麼發展,才能降低運維量,怎麼才能適應客戶快速增長的業務帶來的效能壓力?很多時候讓我們不得不想這些問題。如果不考慮,產品將無法適應企業的需求,自然也就廢棄。只有我們遇到這樣的問題嗎?客戶換一套產品就能解決嗎?基於與客戶的交流,很多系統都有這樣的問題,那我們能怎麼去解決這個問題呢?

3月到5月,在貴陽一直在想這些問題----------緩慢與糾結。客戶年度公升級的時間是確定的。在無大動作的上半年,有時間讓我們思考問題之外的問題。效能/健壯性,跟我們寫的**有很大的關係,跟網路環境、業務資料沉積也有很大的關係,很多時候是積累效應帶來不可逾越的問題。

這段時間心累,糾結,在糾結中不斷找資料充實自己,關注quartz3.08版本的引入是在這幾個月對整個原始碼反覆研究後作出的決定,對排程的整體思維方式進行了一次提公升。在2023年為拆分業務執行段時,構建乙個基於timer的簡單時序排程任務。而quartz解決了排程與作業分離的問題,執行時機的多樣定義,並對執行時機可控設計是我們缺失的,所以對業務標準化改造後quartz成為工作流時排程器的優等選擇。

同樣對mongodb,redis等相關開源封裝進行了研究。補足對nosql的恐懼心理,因為他們存在有點的同時也可能會帶來」災難「,所以產品重構時要謹慎引入,可控範圍內使用。

解決效能的問題不依賴神話,改造的方向還是資料模型構建,讓資料庫慢慢回歸到儲存資料的本質。拆表/拆庫是保證系統長期高效/穩定執行的基石。

在5到6月提供了當前被定義為業務沉積庫的方案,並完成了產品改造,讓查詢資料與高頻使用資料基本分離。但前端產品需要改造,給客戶公升級改造帶來不確定性?整體討論時未通過,但整體方向是沒有問題的,只是怎麼控制風險的問題。執行庫與業務庫方案被擱置。

面對不斷擴大的業務資料規模,我們必須面對,在參照flowable方案後,重新定義執行庫/業務庫/業務沉積庫方案。經過乙個月的努力,在發布第乙個執行庫方案後,團隊測試出100多個優化點,經過乙個星期的改進,今天基本確認發行基礎版本。經過測試改造後,將在近期應用到生產環境上。

有點遺憾的是,我的團隊只剩下我了【開個玩笑】,其實整個年都這樣~~~~~~~~~~~~~~~我需要乙個助手幫我應對基本問題。   不過也無所謂了,可以在北京找合適的人進行分解,所以我的團隊延伸了...........

我只是乙個從規劃/設計/開發/定型的程式設計師,不對,這5年應該叫 構建工作流的程式設計師,乙個覆蓋軍工、製造、能源、環保、高校、港口等行業合同管理與法律事務管理的工作流程式設計師。

下乙個5年,值得期待.............

也許是面試的題目

面試題 break關鍵字 使用場景 1.在switch中使用,作用結束switch判斷。2.在迴圈中使用,作用結束當前迴圈。break的使用注意點 1.break後面不需要做任何操作 2.如果外部迴圈結束,內部迴圈也會結束。continue 繼續 使用場景 continue只能在迴圈中使用。cont...

婚姻也許是也許不是愛情的墳墓

在朋友的空間看到了一篇文章,內容是寫從愛情步入婚姻殿堂後的男女心態的變化,描述的不能不說是惟妙惟肖,淋漓盡致。其中有一些論述,很耐人尋味,發人深思,下面我把這篇文章 過來,奇文共欣賞,疑義相與析。兩個人由相識 相知,到相戀 相愛,最終攜手走向愛情的歸宿 婚姻的殿堂,心中無不懷著甜蜜的憧憬 美好的期待...

也許是經典的sql語句

use rujia transmit go 建表同時插入多條資料 create table test id int,name varchar 50 int insert into test select 1,愛的 1 union all select 2,撒播 1 union all select ...