由《失控》引起的對分佈式系統的聯想

原由是幫一個申請留學的大學畢業學寫研究計劃,可能對本身之後有啓發,因此記下來。
只是研究計劃的草稿,因此草草寫完,沒作深刻調查。
我寫的草稿記錄以下:編程


分佈式系統相關的聯想

最初據說分佈式概念併產生興趣:

PlayStation3 的 folding@home https://en.wikipedia.org/wiki/Folding@home
Folding@home利用聯網的電腦和PS3的處理能力來模擬蛋白質摺疊,最終幫助研究人員研究如老年癡呆症和癌症等疾病。第一次認識到的分佈式系統和分佈式系統的強大。 併產生了濃厚的興趣。分佈式

進而對分佈式有了初步的瞭解。
首先了解到了分佈式計算,諸如 MapReduce, Hadoop 等
而後爲了支撐分佈式計算,有了分佈式文件系統,諸如 HDFS, ceph, GlusterFS 等微服務

再日後發展,分佈式的思想影響到軟件系統的開發,引起了微服務(microservice)替換單體應用的歌名。oop

因而可知,分佈式是一個趨勢,很但願從事相關研究。性能

對分佈式系統最初的理解:

Linux 的哲學:Do one thing and do it well. 分佈式系統每一個部分負責一個功能,而後組合起來就能夠作很複雜的事。
軟件領域的哲學:若是單體軟件不能解決,那就分層。沒有什麼軟件難題是分層解決不了的。分佈式系統的理念就是如此,系統負荷和複雜程度到了單機沒法解決的程度,那就分層,使用分佈式操做系統進行拆解。操作系統

讀過的相關的書:

Out of Control: The New Biology of Machines, Social Systems, and the Economic World《失控》
Programming Collective Intelligence 《集體智慧編程》設計

《失控》這本書中的故事:
天然界的智慧中比較偉大的一種就是 「集體智慧」,多個個體總成的集體體現出的智慧超過個體的總和。而且這種智慧是天然而然發生的。美國教授作了一個實驗,500我的坐在一個屋子中,一同玩控制一個飛機飛行的電子遊戲:
每一個人有幾個按鈕,控制飛機前進後退和上升降低,計算機識別每一個人的指令,而後根據整體結果作出動做的決策。整個過程每一個人徹底是自發的,沒有人進行規劃,管理。使人驚奇的是,最終飛機不只能平穩飛行,還能作出在空中翻轉等複雜動做。可是目前還沒法解釋清楚這一切是如何發生的。遊戲

由此聯想到和分佈式操做系統的關係:
天然界展示出的集體智慧和羣體行爲,有不少是 「無監管的」, 「自發的」
但目前成熟的分佈式系統通常是有有監管的,也就是說,通常是有一個 Manager 或者 Master 來對其餘部分進行管理,調度。這樣當系統負荷巨大時,可能會致使在 Master 這部分產生瓶頸(bottle neck)於是限制進一步提高分佈式系統總體性能。ip

若是能將天然界中無監管的行爲模式應用到分佈式系統中,設計出新型「自發」「無監管」的分佈式系統,可能將會大幅提高分佈式系統性能並有可能改變整個分佈式系統格局。ci

相關文章
相關標籤/搜索