COM 和 DCOM 的區別


什麼是 COM?

微軟的元件程式架構 COM(元件物件模型)主要為 Windows 設計。它是 OLE 和 ActiveX 的基礎,允許程式碼重用而無需重新編譯。COM 中的元件是一個平臺特定的二進位制檔案,符合條件的應用程式和其他元件可以使用它。

使用其服務的程式包括指向其標準化介面的指標,而不是訪問元件的基礎資料結構。因此,元件可以相互通訊,而不管它們的工作方式或用什麼語言編寫。

COM 程式設計師使用 COM 感知元件來建立他們的應用程式。類 ID(CLSID)是全域性唯一識別符號,用於識別不同的元件型別(GUID)。每個 COM 元件都有一個或多個介面來公開其功能。介面 ID(IID)也是 GUID,用於區分元件支援的多個介面。

什麼是 DCOM?

DCOM 是一種程式設計技術,允許計算機在遠端計算機上執行程式,就像它們在本地執行一樣。分散式元件物件模型 (DCOM) 是分散式元件物件模型的縮寫。它是一個軟體元件,使 COM 物件能夠透過網路進行通訊。

DCOM 是 COM 的擴充套件,它解決了 COM 模型的一些問題,使其在網路上更具優勢 -

  • **封送處理** - 封送處理解決了將資料從一個 COM 物件例項傳遞到另一臺機器上的另一個 COM 物件例項的問題;在程式設計術語中,這稱為“傳遞引數”。

  • **分散式垃圾回收** - 分散式垃圾回收旨在擴充套件 DCOM 以處理大量網際網路流量,還包括一個刪除和回收已完成或已放棄的 DCOM 物件的機制,防止 Web 伺服器記憶體被耗盡。然後,它與事務鏈中的其他伺服器通訊,通知它們事務的物件可供刪除。

  • **DCE/RPC 用作底層 RPC 機制** - Microsoft 將 DCE/RPC 構建為 DCOM 的底層技術 - 其中 DCOM 中的 D 來自於此 - 以實現前面提到的目標,嘗試擴充套件以支援大量 Web 流量。

下表重點介紹了區分 COM 和 DCOM 的主要要點 -

COMDCOM
它代表元件物件模型。它代表分散式元件物件模型。
COM 是一組在客戶端環境中執行的元件工具。DCOM 在給定的伺服器上執行。
COM 物件需要安裝在要使用它的機器上。它需要安裝在同一網路上的某個位置。
COM 是一種介面標準。DCOM 是為分散式應用程式設計的模型。
它允許物件的可重用性。它不允許重用。

更新時間: 2021年8月17日

5K+ 瀏覽量

啟動您的 職業生涯

透過完成課程獲得認證

開始學習
廣告

© . All rights reserved.