Web 應用程式發展到目前以來,儼然已經成為一門顯學,百花齊放,各式各樣的解決方案都有;而加入了行動裝置之後,開發架構與執行環境又更顯得複雜。然而大家捫心自問,這些Web 應用程式,測試過之後,每次都能順利上線嗎?
在傳統軟體的分工當中,開發人員負責開發應用程式、測試、打包,而IT人員協助建置環境、部署以及維運。然而隨著Web應用程式所需要的執行環境越來越複雜,IT 人員維運的成本也就越來越高;如果再加上各種不同新平台模組的設定,IT 人員幾乎是無法掌握Web應用程式上線之後的狀況,於是乎大大小小的問題,都要找開發人員回來處理,搞得開發人員既要開發新的功能,又要三不五時看看是不是因為什麼設定被改掉,導致系統服務發生問題。惡性循環的結果,最後就是每個開發人員都必須要校長兼撞鐘,變成 "Software + System Engineer"….
若是任由故事繼續這樣發展下去的話,我看以後真的是會找不到開發人員了。幸好在雲端的解決方案當中,可以把維運的工作,交給雲端平台(Platform)的提供者,而開發人員只需要著重在系統程式開發的方面就可以了。省卻了IT 環境的建置與維運的工作之後,開發人員的解決方案可以更快的部署上線;這對於提供SaaS服務或是開發行動裝置解決方案的雲端服務廠商來說,更是大大節省營運成本的一盞明燈!
但是大家需要注意的是,有很多團隊對於雲端平台都有錯誤的觀念,以為只要把執行環境直接做成虛擬機器之後,找個代管商的機器丟上去就可以了。請參考上面的這張圖,若是你將執行環境製作成虛擬機器,或是使用Amazon這一類 IaaS 所提供的服務, 表示你還是必須要從安裝、升級作業系統,設定防火牆、防毒防駭、設定網路負載平衡...等等開始製作你的環境;而這些環境將來如果需要升級與調整,或是虛擬機器需要備份,也比需要透過你或是IT 人員處理(通常會是你)才可以完成。如此一來,你節省不了多少系統營運的成本,卻又把環境搞得更複雜…
雲端時代的開發人員,請記得要捨棄掉IT 時代的思維,專注在建立創新服務跟收錢上就好! 因此在建立SaaS服務或是行動裝置解決方案的後端服務時,PaaS會是比較好的解決方案。PaaS 除了可以幫你完成前一段文章中所有用紅色標記的 -- "你" -- 的工作,又可以在無需自己建置機房的狀況之下,將服務快速的部署到全世界的任何地方。如此一來,Software Engineer才有可能有更多時間,創造出更多賺錢的機會!!
沒有留言:
張貼留言