以前的雲端系統我曾經建置過一版,就為了提供一套給客戶使用的方式,所以做了一版用WINDOWS搭建WSL的DOCKER技術的MQTT架構。
接著後端使用C#來處理訂閱MQTT的接收,然後把資料存成MSSQL。
當時技術使用的因為是熟悉的C#,所以覺得很安心可以開發各式各樣的功能,沒想到是災難的開始。
一下子說要增加用戶示警,所以要有發出警告的EMAIL。
一下子又說要有LINE 群組告警通知,如果電池模組發生異常現象群組內要第一時間自動回報。
然後又是 MSSQL 使用的是express, 單DB容量限制爆了...
前兩個功能都因為商家收回權限,導致功能無法啟用,當時也沒有什麼解決的辦法。
甚至於常常因為多寫了一些沒有顧慮到的伺服器連接手段,導致BUG連連。
時不時的當機,當時著實的維修了好一陣子,才慢慢步上軌道。
有鑑於此,這次我跟新進的小朋友想重建一版新的系統,使用linux 加上原生docker 技術,然後把服務都內存在docker volume裡面。輕鬆轉移打包。
想法很簡單,做的時候理所當然還是遇上不少困難。
像是網路上找的範例不能用,就轉而向chatgpt或gemini去套用建立範例。初期都能跑,但等到規模大到某一個程度的時候,就變成另一堆程式技術債。
一下子這個當掉沒顧好,一下子那邊接收異常。
等全弄好了,東拼西補整個node js架構看起來亂透了,又再重新打掉重練。
做了至少三次到四次以上,才終於做到結構單一化,功能模組化添加。
產品建立連線不掉包,可持續大量的應用。
正當我想說要正式發表推廣的階段時,長官聽完我的介紹以後,轉頭要PM開一個新的專案,直接接管我們開發的新雲端項目。
一方面控管我們的程式架構和流程,一方面提供我們現有的功能讓業務去推廣。
總之就是從原本做開心地提升技術,現在要做正式的被納管。
心裡有種被收割的感覺。
這感覺就像是你原本叛逆年輕的時候不懂事,躺在沙發不幫忙做家務。
有天心血來潮想要幫忙家裡,打掃環境。
做到一半休息的時候,人家看你打掃完客廳,接著就說你平常都不做事,廁所也順便掃一掃。
以後每天還固定要你做這些事情一樣。
我現在知道這些人的感受了,被收割感覺真是糟透了。
不過老闆還是有給薪水的,至少這樣可以平衡一點。唉...