最近在研究分布式應用,比如 分布式系統(tǒng),中間件,分布式數(shù)據(jù)庫,分布式數(shù)據(jù)處理。使我對進程線程,內(nèi)存模型,通訊,協(xié)議等有了更進一步的認識和體會。更讓我想起以前的一句話 “網(wǎng)絡就是計算機”,互聯(lián)網(wǎng)是一種趨勢,云計算,SOA 理論架構(gòu)的成型使我認識到,做為軟件人員,你不得不或者必須深入了解分布式原理,分布式計算模型,以后不管出現(xiàn)什么技術(shù),可以很快的上手。其實計算機就那么點東西(老師說的,嘿嘿)。
最近,給研究生講了下《RMI 原理及應用》。看看對你有用嗎? 可以下了看看。
/Files/Jack2007/rmi_jack.pdf
體會:一直以來,每次講東西,人一多就有點緊張,一緊張就講的快,下面的學生就沒感覺。真的要歷練啊。學學以前的老師,講的很慢,句句是道理。很是佩服,以及她的講課風格,我很喜歡,我的楷模。可能我不適合做學問,適合做工程,呵呵,我喜歡軟件,我更喜歡做軟件的人!
本人也在學習管理方面的知識,比如中國人性管理,軟件開發(fā)管理等等,希望和大家一起討論,呵呵。
個人體會:
1. 分布式系統(tǒng)其實就是進程集,進程之間本質(zhì)上是通過消息傳遞的,只不過在我們這個抽象層次,看到的都是對象,似乎就像單進程引用一樣,很多技術(shù)比如 CORBA, RMI, DCOM, EJB 都抽象到了對象這一層,屏蔽了底層細節(jié)! 既然分布式都是一樣的,那么為什么有這么都技術(shù),一. 應用的領(lǐng)域不同。二. 抽象的層次不同,其實人們?yōu)槭裁慈コ橄笠恍〇|東,應該是關(guān)注點的轉(zhuǎn)移,比如 SOA 的提出,就是將對象或組件的關(guān)注點轉(zhuǎn)移到了業(yè)務這個層面!
2.分布式系統(tǒng)就像一個團隊一樣,每個成員都是個進程,都是系統(tǒng)的一個核,單單要某個核干活,你會把他宕了。這是就需要個調(diào)節(jié)者,那就是項目經(jīng)理,有時經(jīng)常聽人說項目經(jīng)理是搞管理的,其實我不為然,管理的本質(zhì)就是協(xié)調(diào),你說你是管理,只能說你還不成熟,呵呵。每個管理者都想讓每個核發(fā)揮最大的潛能,這就是分布式系統(tǒng)的目標,也是一個團隊的目標,網(wǎng)格和云計算等分布計算模型,暗示了,分布式的管理模式是可行的。
3.我們都知道目前在分布式領(lǐng)域的最高抽象就是 SOA, 有人說 SOA 的目的就是集成和重用,更有人說 SOA 就是一種理念和方法論,統(tǒng)統(tǒng)太抽象了,個人認為 SOA 可以分兩個階段或者方式走,1. 在原有的系統(tǒng)和應用之上構(gòu)建服務,再編排組裝成企業(yè)業(yè)務。2. 完全走 SOA 的方式開發(fā)系統(tǒng)比如用到的 SCA, SDO , ESB 等技術(shù)和觀念。說白了 SOA 的最終目標就是企業(yè)業(yè)務,通俗講就是對企業(yè)利潤
的支持。
4. 常聽朋友說:“對事不對人”,“從不抱怨 (never blame)”等等的話,不知道他們從哪里學的,其實在中國這些東西都是不適合的,在你的公司企業(yè)里你認為 “對事不對人” 這句話有用嗎?在國外,同事之間可以因為某個問題爭辯的面紅耳赤,會后照常做事,照常是朋友。中國呢?大家都曉得。“從不抱怨 (never blame)” 只能證明你正在抱怨,中國人很少就事論事的,應為中國人的事實脫離不了人的,而外國人就不一樣,不要盲目的學習外國的經(jīng)驗。其實管理上我們用不著學外國,因為中國人本來就有自己的管理辦法。
5. About personality, real beauty comes from learning, growing, and loving in the ways of life. That is the Art of Life. You can learn slowly, and sometimes painfully, by just waiting for life to happen to you. Or you can choose to accelerate your growth and intentionally devour life and all it offers. You are the artist that paints your future with the brush of today. Paint a Masterpiece.
God gives every bird its food, but he doesn't throw it into its nest. Wherever you want to go, whatever you want to do, it's truly up to you.
6. 時間是什么時候出現(xiàn)的,為什么會有時間的觀念?其實邏輯和推理是與時間一起產(chǎn)生的,他們共同的本原就是”序“,當原始人發(fā)現(xiàn)萬物有序時,時間就誕生了,人們也就會推理簡單的事,有了邏輯思維了。在分布式系統(tǒng)中,時間是個很重要的概念,可能在以往的開發(fā)中人們很少注意到,因為在一個進程中, process 是有 step 的,那就是他的序,你可以用物理時間也可以用邏輯時間來表述。為了發(fā)現(xiàn)事物的演進邏輯,我們必須給每個事件或狀態(tài)一個時間戳,來標識他的 “序”,在分布式系統(tǒng)中就是時間同步。同步有很多方式(就是我們常說的算法!),有時間可以研究研究!
7. 對于分布式系統(tǒng)的任何一個 point 可以分為四個層次,他們是進程->服務->容器->對象,我們做一個簡單應用的時候很少考慮前面三層,只是關(guān)心我們的業(yè)務對象及其交互,我們都有進程的概念,在一個進程里可以提供一個或多個服務,每個服務我們都知道是用 IP+Port 來定位的,在每個服務中都有一個或多個容器,容器負責對象的管理。大家都知道 IIS,tomcat 之類的 web 服務器,比如 tomcat 他就是 jsp 和 servlet 的容器,再有就是 JBoss, weblogic 等等 EJB 容器,所以我們對容器的概念并不陌生。
最近,給研究生講了下《RMI 原理及應用》。看看對你有用嗎? 可以下了看看。
/Files/Jack2007/rmi_jack.pdf
體會:一直以來,每次講東西,人一多就有點緊張,一緊張就講的快,下面的學生就沒感覺。真的要歷練啊。學學以前的老師,講的很慢,句句是道理。很是佩服,以及她的講課風格,我很喜歡,我的楷模。可能我不適合做學問,適合做工程,呵呵,我喜歡軟件,我更喜歡做軟件的人!
本人也在學習管理方面的知識,比如中國人性管理,軟件開發(fā)管理等等,希望和大家一起討論,呵呵。
個人體會:
1. 分布式系統(tǒng)其實就是進程集,進程之間本質(zhì)上是通過消息傳遞的,只不過在我們這個抽象層次,看到的都是對象,似乎就像單進程引用一樣,很多技術(shù)比如 CORBA, RMI, DCOM, EJB 都抽象到了對象這一層,屏蔽了底層細節(jié)! 既然分布式都是一樣的,那么為什么有這么都技術(shù),一. 應用的領(lǐng)域不同。二. 抽象的層次不同,其實人們?yōu)槭裁慈コ橄笠恍〇|東,應該是關(guān)注點的轉(zhuǎn)移,比如 SOA 的提出,就是將對象或組件的關(guān)注點轉(zhuǎn)移到了業(yè)務這個層面!
2.分布式系統(tǒng)就像一個團隊一樣,每個成員都是個進程,都是系統(tǒng)的一個核,單單要某個核干活,你會把他宕了。這是就需要個調(diào)節(jié)者,那就是項目經(jīng)理,有時經(jīng)常聽人說項目經(jīng)理是搞管理的,其實我不為然,管理的本質(zhì)就是協(xié)調(diào),你說你是管理,只能說你還不成熟,呵呵。每個管理者都想讓每個核發(fā)揮最大的潛能,這就是分布式系統(tǒng)的目標,也是一個團隊的目標,網(wǎng)格和云計算等分布計算模型,暗示了,分布式的管理模式是可行的。
3.我們都知道目前在分布式領(lǐng)域的最高抽象就是 SOA, 有人說 SOA 的目的就是集成和重用,更有人說 SOA 就是一種理念和方法論,統(tǒng)統(tǒng)太抽象了,個人認為 SOA 可以分兩個階段或者方式走,1. 在原有的系統(tǒng)和應用之上構(gòu)建服務,再編排組裝成企業(yè)業(yè)務。2. 完全走 SOA 的方式開發(fā)系統(tǒng)比如用到的 SCA, SDO , ESB 等技術(shù)和觀念。說白了 SOA 的最終目標就是企業(yè)業(yè)務,通俗講就是對企業(yè)利潤
的支持。
4. 常聽朋友說:“對事不對人”,“從不抱怨 (never blame)”等等的話,不知道他們從哪里學的,其實在中國這些東西都是不適合的,在你的公司企業(yè)里你認為 “對事不對人” 這句話有用嗎?在國外,同事之間可以因為某個問題爭辯的面紅耳赤,會后照常做事,照常是朋友。中國呢?大家都曉得。“從不抱怨 (never blame)” 只能證明你正在抱怨,中國人很少就事論事的,應為中國人的事實脫離不了人的,而外國人就不一樣,不要盲目的學習外國的經(jīng)驗。其實管理上我們用不著學外國,因為中國人本來就有自己的管理辦法。
5. About personality, real beauty comes from learning, growing, and loving in the ways of life. That is the Art of Life. You can learn slowly, and sometimes painfully, by just waiting for life to happen to you. Or you can choose to accelerate your growth and intentionally devour life and all it offers. You are the artist that paints your future with the brush of today. Paint a Masterpiece.
God gives every bird its food, but he doesn't throw it into its nest. Wherever you want to go, whatever you want to do, it's truly up to you.
6. 時間是什么時候出現(xiàn)的,為什么會有時間的觀念?其實邏輯和推理是與時間一起產(chǎn)生的,他們共同的本原就是”序“,當原始人發(fā)現(xiàn)萬物有序時,時間就誕生了,人們也就會推理簡單的事,有了邏輯思維了。在分布式系統(tǒng)中,時間是個很重要的概念,可能在以往的開發(fā)中人們很少注意到,因為在一個進程中, process 是有 step 的,那就是他的序,你可以用物理時間也可以用邏輯時間來表述。為了發(fā)現(xiàn)事物的演進邏輯,我們必須給每個事件或狀態(tài)一個時間戳,來標識他的 “序”,在分布式系統(tǒng)中就是時間同步。同步有很多方式(就是我們常說的算法!),有時間可以研究研究!
7. 對于分布式系統(tǒng)的任何一個 point 可以分為四個層次,他們是進程->服務->容器->對象,我們做一個簡單應用的時候很少考慮前面三層,只是關(guān)心我們的業(yè)務對象及其交互,我們都有進程的概念,在一個進程里可以提供一個或多個服務,每個服務我們都知道是用 IP+Port 來定位的,在每個服務中都有一個或多個容器,容器負責對象的管理。大家都知道 IIS,tomcat 之類的 web 服務器,比如 tomcat 他就是 jsp 和 servlet 的容器,再有就是 JBoss, weblogic 等等 EJB 容器,所以我們對容器的概念并不陌生。
本博客為學習交流用,凡未注明引用的均為本人作品,轉(zhuǎn)載請注明出處,如有版權(quán)問題請及時通知。由于博客時間倉促,錯誤之處敬請諒解,有任何意見可給我留言,愿共同學習進步。