讀 wiki: cloud computing,對於雲運算有更深印象,雲將提高電腦的使用效率, 降低企業和使用者的成本( 企業可以將一次投資轉化為租賃或者為運營成本,可以很靈活,有擴充,同時降低風險;同時對於機器的維護,管理,軟體的部署都可以給off-site 或者第三方去外包;與此同時,將軟體也可以租賃,subscription 的方式銷售軟體,SaaS。 對於使用者也不需要機器升級,無需維護機器,同時只要pay-for-service,無需購買軟體。 同時是節能減排,綠色環保。 這是一舉多得,共贏的局面。
但是,也有一些副作用。比如說,安全考慮,使用者的資料安全,隱私。 同時雲集算也只能由一些大的技術寡頭提供:google,amazon,IBM,hp,salesforce等等。
更容易將強他們的壟斷地位。 這對於消費者而言,不是什麼好事。 如果雲端運算來了,中國的網速也應該升級。
結合自己當前的項目,考慮一下雲集算所用到技術。
結構就三層:
Web Portal
Concrete Web Service ( depend on other service, and storage)
Concrete entity( Linux Farm)
【Note】 其中WebPortal 就是一般用使用者可以終端訪問;
Web Service 可以說是核心。 縱向來說,其上有web portal, 下有具體計算的單元。其間通訊是關鍵。
橫向來說,其要訪問database,storage service。 同樣底層的entity 需要和這些storyage service 交換資料。
這裡面會用到那些常用web 開發技術, aps,java,python.
還有各種其他的第三方service, 比如,使用者登入資訊以驗證,本機資料庫,隱藏檔的storage服務,以及對於具體項目而言的第三方服務等等。
service 應該還有個一排隊系統。
最後就是Linux farm。每一個節點,或者由他們組成一組cluster用mpi 或者Map/Reduce 橫向通訊。Linux 節點與Web service 用socket 雙發縱向通訊。不說windows server,因為Linux 免費和穩定。
此外就是要log,記錄系統的狀態,易於問題定位和調試。
還有一個必不可少的monitor系統,用於監控當前系統的狀態,易於早點發現問題,尤其是系統處於亞健康狀態。每一個Linux 節點,心跳與raas service 通訊,service 本身的負載。要注意的是,組建相當多,要注意每一個模組的版本號碼。monitor 可以同時監控他的本版號
其中不能不說open source ,工具品質之高,數量範圍相當廣,效能也不錯。 Apache 的網頁伺服器, Jemter 效能測試,Selenium的自動化測試,Valgrand 記憶體泄露調試,profile的各種工具。以及Linux 本身提供的大量工具,命令列和IDE,Ecllips, codeblocks,Qt-creator,Kdevelop 等。 資料庫mysql。此外還有一個很好shell 組合器,使其功能無比強大。