開發後端的感受-2
玩後端一個月了,利用空餘時間嘗試去配置各種微服務架構,嘗試使用不同的開源服務,慢慢有更多體驗。
我開始懂「寫出來這件事並不困難」這件事,後端要寫出能動的 CRUD 非常容易,在框架的幫助下,差不多的複製貼上,東西就寫出來了。後端沒有像是前端的「CSS 門檻」,在既有的東西下,可以很容易的製作出來。甚至我感覺到,資料的組裝幾乎是資料庫在做的事,前端的資料組裝複雜度可以說是超高,後端幾乎資料處理都有既定的處理方式,資料流單純很多。
這些容易都建立在初期的後端架構,但進入微服務架構之後,依賴管理和資料流控管就開始指數上升,架構橫向拓展的問題複雜度高速增加。
但真正難的是各種複雜的系統架構問題,需要各式各樣的系統元件與架構設計。請求太多怎麼辦?流量太大怎麼辦?兩支 APi 如何相互溝通?狀態的生命週期要如何管理?API 給的參數是否有安全問題?多個儲存服務狀態如何同步?
種種問題逐漸浮現,有種另一個世界的感覺。腦袋的運轉方式完全與前端不是同一個概念,開始懂微服務基於後端的價值與地位,功能拆解上越來越重視「職責」的分別。
不知道再挖下去有什麼呢⋯⋯