1.COM+介紹
可能有許多人已經用COM設計過應用程序並知道它有很多侷限性。實際上,這項技術的一個主要問題是它不太適用於通常通過公司的局域網(LAN)或廣域網(WAN)進行發佈的企業級應用程序。
MS很久以前就意識到了這種限制,並試圖通過分佈式COM(DCOM)來彌補這個缺陷。
但是DCOM也存在一些限制,所以MS在Windows2000中提出了COM+.
COM+不是一項新技術,它是對當前技術的一個擴充。
COM+中增加的主要東西包括兩種已有的技術,微軟事務服務器(MTS)和微軟消息對列(MSMQ)。MTS通過事務增加了COM的可靠性。它確保每次
COM數據傳輸至少發生一次,而且只有一次。另一方面MSMQ還改正了另一個與COM有關的問題,就是緊密連接的應用程序的問題。當使用位於本地機器上的
應用程序時,客戶和服務器同時存在。但是分佈式應用程序就不能保證這一點。用戶可能在沒有連接到服務器上但同時又創建了新的工作。分佈式應用程序需要提供
一個強健的環境,允許用戶在服務器處於不可用狀態時仍然可以工作。
1.1 COM+的歷史
DDE和OLE是MS早期的東東。後來OLE發展成了ActiveX(一種特殊類型的組件技術)。ActiveX實際上包含有DDE和OLE中的多種概念
和技術,它增加了一種思想,既可以將ActiveX控件(獨立的專用程序或庫,通常很小)用於傳統的應用程序或嵌入到HTML文檔中在internet上
使用。
DCOM在分佈式計算中所起的作用
DCOM它依賴於開放軟件基金會(OSF)分佈式計算環境(DCE)的遠程程序調用網絡協議獲得了成功。它可以使應用程序通過網絡以DDE、OLE和
COM進行通信。另外,DCOM創建的鏈接即安全又持久。如果移動了服務器端的組件,則客戶機無論如何也找不到它。不過,排除掉那些不合理的東西DCOM
還是十分可靠的。
DCOM的問題在於它與協議結合的臺緊密了。這意味着客戶和服務器必須同時存在並且在他們之間有連接。
DCOM還存在其他的問題。對於一次通信至少要發生一次而且只能發生一次來說DCOM就不能提供任何保證。
那麼COM+有多好呢?實際上COM+是三種技術的結合:DCOM、MTS和MSMQ。DCOM有一個並且只有一個問題,就是信息的傳輸。將MTS加進來
就解決了這個問題。現在每次數據傳輸都將作爲一個事務而發生,這就意味着每次傳輸將只發生一次,而且至少發生一次。DCOM不能在非連接的環境中工作。
MSMQ使用一個消息協議解決了這個問題。
1.2 COM+要點
1.2.1連通性
COM+有兩種連通性。第一,COM+所包含的MTS確保了通信的可靠性。每一次通性都保證發生且僅發生一次。第二,非連接的應用程序的開發意味着無論在何處都可以產生數據,即使沒有直接連接到服務器也可以。
1.2.2用戶
無論是對用戶還是對程序員,COM+都設計有可靠的連通性和簡易的使用性。
1.2.3用戶界面
1.2.4程序員
大多數開發人員能夠從COM+中得到的好處
快速的開發時間、更少的調試時間、更多的自動功能、更加可靠
1.3 COM+和COM的比較
從創建組件的角度來講,COM和COM+是相同的。實際上,在談及組件時COM+僅是對現存COM技術的一個擴充。COM+是COM的一個超集,所以在應用程序中用COM+代替COM不會丟失任何東西。
學習COM+的筆記
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.