共同筆記 2.0

回應

共同筆記,有關於分散式系統這個部份,特別感興趣。不過筆記的內容,並沒有包含定義,直接就開始說明分散式系統的特色。

問題:

(1) 分散式系統的定義不重要嗎?如果重要,那定義是甚麼(你不會自己去查 wiki?是的我可以,但是會跟後面的筆記配不起來)

(2) 分散式系統,一定必須有 middleware 嗎?

     對我而言,必須很多人使用的 API 或是 package 才算 middleware,因為變成一種標準,例如 renderware 或是 java

     可是一定需要 middleware 嗎?很多分散式系統,例如 online game server 就是 sever application 的一部分,這裡講的分散式系統,定義為何?

共同筆記2.0的主題, 目前主要是配合 weco lab 的課程.  各主題的內容也就是教學課程的內容.  部份主題的內容是新興技術,  還有一些是資訊科系的傳統課程(如: 網路技術, 和分散式系統). 分散式系統式一個已經有30年以上領域. 30年來, 許多專業會議/雜誌, 課程都以分散式系統為名.  因為 Internet 和軟體技術的進展, 分散式系統的範圍愈來愈大, 也演生出了不少新領域, 近兩年熱門的雲端運算就是一個例子.  當然, Client-server 系統也是一類比較簡單的分散式系統.Middleware也是一種設計的選擇.

如果要探索分散式系統的原始動機, 就必需要了解分散式系統的源頭"平行運算".  早期的超級電腦多是有多個中央處理器(CPU), 但共用同一個記憶體空間和clock.  後來, I/O和網路的發展, 使得分散式運算分離出來.  前題就是, 每一個連結的組成,  有自己clock和記憶體, 但這都是歷史了.

分散式系統課程, 在全世界各大學都已開授多年, 一般都會要求修課同學先修作業系統和電腦網路兩門課.  至於, 宅學習共筆的分散式系統的內容主要是 follow 我們用的Coulouris分散式系統教科書內容.