蔣少華,陳德健,蔡裕源,唐麗蓉,夏 楠,張燦源
(韶關學院信息科學與工程學院,廣東韶關512005)
隨著大數據、云計算的興起,人們對網絡的依賴越來越強,巨大的網絡業務隨之卷土而來,這既是機遇也是挑戰,快速拓展互聯網業務成為很多公司的核心戰略.若業務容量超過預期,需要在一個新的操作系統再重新部署一次軟件環境,傳統業務部署的流程總是需要經過開發人員部署軟件環境→測試運行→排錯→再測試運行→再排錯→業務上線,整個過程消耗至少3天,耗時耗力,不利于公司的良好發展.
Docker是一個近幾年興起的,開源的應用容器引擎,它重新定義了程序的開發、測試、交付以及程序的部署過程,開發人員可以打包自己的應用以及依賴包到一個可移植的容器中,然后發布到任何流行的Linux機器上,也可以實現虛擬化[1].每個運行的容器與容器之間,是相互隔離的,沒有任何接口,完全使用沙箱機制,類似i-Phone的各個應用之間的關系[2].性能開銷接近于零,可以很容易地在機器和數據中心中運行.Docker還有不依賴任何語言、框架或包裝系統的優點[3].
Docker引擎創建的容器進程伸縮性強,用戶可以方便、快捷增刪容器,數秒內就可以完成操作.用戶通過對Docker容器的優化配置,大大地減少了資源的浪費,降低資源成本,提高數據中心的利用率,使服務器資源得到最有效的利用[4].現今市場上己有各種比較成熟的PaaS(Platform-as-a-Service)平臺,例如:國外谷歌的Google App Engine,微軟的Windows Azure Platform,國內百度的百度應用引擎……