Go Live


最近我開始用 Go Live 取代 Production 這個詞。

因為 “Go Live” 不代表只有 “Production”, 也包含任意的環境,可以是實驗用環境 (Lab)、功能性測試 (Functional)、系統性測試 (System)、整合性測試 (Integration)、開放給外面使用的 Field / Sandbox ….

See: Stages in Software Testing

只關注 “Production” 的狀況,很容易忽略其他地方,能動就好 是很多公司都有的問題,特別是測試環境。但如果環境本身是有問題的,或者無法重視這些問題,我不相信 Production 會有多好。大問題都是從小問題產生。

Live Music!

Live 對樂手來講就是 現場現場 不管是兩萬人的大場子、還是只有一個聽眾 + 3 個員工的小 Pub、還是在安靜到連血液流動聲都聽得到的錄音室,都是現場,面對的態度應該都是一樣,但是做法會有差異。

越大的場子,干擾因素越多,意外狀況越多,不管是天氣、團員、燈光、音響設備、樂手的問題、售票的問題。。。

小的場子干擾就不多?站上舞台發現台下只有三個人,一個人是聽眾,一個人是服務生,另一個是老闆。。。團員有五個人。。。這干擾壓力也很大。。。

錄音室,安靜到不像話,沒有干擾?製作人、錄音師、弦的味道、耳機、椅子的高度、空氣的流動聲。。。錄了兩百次還錄不好 …..

樂手面對不同的環境,就可以有不同作法,像是:

  • 大場子當然火力全開,舞台百個三十個音箱陣列 (Stack),吉他擺個十把當裝飾,各種金屬裝飾都往身上帶。。。
  • 小 Pub 音量可以開小一點、燈光可以不用那麼炫、效果器不用開那麼重,但是音樂表達的內容依舊是 awesome!

完整描述請參閱: 簡單、複雜

一個專業樂手,或者有經驗的樂團,什麼環境都可以感到自在,且處之泰然。

Back to the Code

所以用 Go Live 表示,只要變成現場要用的東西,都很重要,從小地方就要做到好,而且要能知道取捨。無法 快速蓋起環境,就:

  • 不容易找架構性問題
    • 無法看到全貌
    • 頭痛醫頭,腳痛醫腳
    • 最後變成癌細胞
  • 不容易自動化測試
  • 不容易找效能問題
  • 不容易監測
  • 成本會越來越難估算
  • 生意來了吃不起
    • 沒那個屁股
    • 用再好的 Cloud 都是白搭
  • DevOps 只是一種神話

我就是很龜毛。。。妥協要學習,但這是原則,這就是軟體工程要知道的。

延伸閱讀

參考資料


Comments

2017-11-14 22:20:00




About Me

Software Developer, SQA Manager, System Operation Manager, Guitarist

AWS Certifications