初看起來,大蟒蛇(Python)與雲計算,二者「風、牛、馬」不相及,根本扯不上關係。本文卻想講一個小故事,把這二者聯繫起來。
當今,在咱們國內,雲計算能夠說是一個比較熱門的「話題」。實際上,搞雲計算能夠採用許多不一樣的途徑與方法來實現,可是,咱們總該有一個最佳的選擇、參照方案吧?好比,一些
IT
產業的國際巨頭選用什麼途徑,咱們能否參照一下?
cade_metz
先生髮表一篇「紀實」長文,題爲「
TheSecret History of OpenStack, the Free Cloud Software That’sChanging Everything」
,意思是說:現今,有一種正在改變着一切的「自由雲軟件」。此文一出,當即引發了個人興趣,因而就找來仔細地讀了一遍,讀後深有感觸,願與你們分享。
在全球業界圈子裏面,美國聯邦航天航空管理局(簡稱
NASA
)頗負盛名。好久以來,
NASA
科學家就對雲計算抱有極大的興趣,這大概是由於
NASA
的平常業務與可靠性計算有密切關係。
......
如今,讓咱們這樣設想一下:在一個空曠的足球場上,整齊地排列擺放着數千臺運行中的」服務器「(每臺服務器都有本身的不一樣編號),這種場面很是壯觀。此時假定在每臺服務器裏面都有很多應用程序在不能間斷地運行中。咱們問一個很實際的問題:可否把每個應用程序都看做是一個「足球」,使其能夠在這些服務器之間隨意「移動」,可是,在任什麼時候刻都不容許任意「停止」裏面的應用程序的正常運行?事實上,作到這一點是有必定難度的。
讓某個應用程序不間斷地發生「移動」,有時是有這種實際需求的,好比,因故障報警,須要」熱切換某臺「物理服務器,而不能「停止」其中的重要程序的正常運行。美國
NASA
的計算機專家們,絞盡腦汁,左思右想,終於想出了一個巧妙」辦法「:若是把應用程序都放入「虛擬機」裏面運行,就有辦法在不間斷程序運行的前提下,能夠隨意「移動」裏面的應用程序,這就好像把應用程序放在一個「虛擬機」籠子裏面運行,搬動整個「虛擬機」籠子,讓應用程序始終在「籠子「(即其「運行環境」)裏面運行着,這不就把問題解決了嗎?
......
順着這條思路繼續想下去,柳暗花明又一村,問題就好辦了。實際上,讓許多應用程序自動地在足球場上「飄來飄去」,如同浮雲,這就是「雲計算」(
Cloud Computing
)取名的由來。
先後通過幾年的努力,而且不斷地「折騰」
(
工做變更
)
,原來的
NASA
計算機專家終於發明了一套雲計算軟件(具備獨立版權),取名爲「
OpenStack」
(意思是「開放協議棧」),並且這個
OpenStack
軟件包執行起來很是之有效。在
2010
年
7
月,
OpenStack
軟件包對外公開發布,使其遵照
Apache
受權規則,成爲名副其實的「自由軟件包」(源代碼徹底開放)。在世界上,這是一件大事情。今後,雲計算就有了容許任何人(不限國籍)都可自由使用,並且品質優秀的軟件包,人們不用再爲雲計算煩惱了。
實際上,這種所謂的「自由雲軟件」很是之複雜,涉及到許多外在因素,是一種超大型的「應用軟件」,須要具有極高的「靈活性」。因而,人們發問:這種「雲軟件」應該選用什麼樣的編程語言來編寫呢?答案是:
Python
編程語言。由於,
Python
語言是當今世界上最靈活、易用的模塊化編程語言。咱們說,研究雲計算,使用
Python
語言是正確的選擇,
Python
當之無愧也。至此,雲計算與大蟒蛇(
Python
)不就發生了」關係」嗎?(注:所謂「雲存儲」也是用
Python
語言進行編程。)
實際上,雲計算的主要目的是」節省能源「,保證數據安全。爲何這樣說?由於,當外界負荷下降時,自動地歸併某些應用程序,把一些應用程序放在少數服務器裏面繼續運行,而將大多數服務器」休眠「,或者乾脆中止運行,以便節省能源(下降電耗)。當外界負荷忽然增長時,雲管理系統會當即自動啓用其餘」休眠「服務器以便」應急「。道理就這麼簡單,所以,雲計算並不神祕。上述文章的做者在該文結束時這樣說:「
......OpenStack is running inside Dell and HP andIBM and Cisco. The world didn’t use to work that way. But it doesnow.」
意思是說,這個世界過去未曾這樣使用
OpenStack
,可是,如今(產業巨頭)都這樣使用了。
轉自 http://www.pythonfan.org/thread-3495-1-1.htmlhtml |