Distributed Component Object Model

De Wikipedia, la enciclopedia libre
Saltar a: navegación, búsqueda

Distributed Component Object Model (DCOM), en español Modelo de Objetos de Componentes Distribuidos, es una tecnología propietaria de Microsoft para desarrollar componentes software distribuidos sobre varios ordenadores y que se comunican entre sí. Extiende el modelo COM de Microsoft y proporciona el sustrato de comunicación entre la infraestructura del servidor de aplicaciones COM+ de Microsoft. Ha sido abandonada en favor del framework .NET.[1] [2]

La adición de la "D" a COM fue debido al uso extensivo de DCE/RPC, o más específicamente la versión mejorada de Microsoft, conocida como MSRPC.

En términos de las extensiones que añade a COM, DCOM tenía que resolver los problemas de

  • Aplanamiento - Serializar y deserializar los argumentos y valores de retorno de las llamadas a los métodos "sobre el cable".
  • Recolección de basura distribuida, asegurándose que las referencias mantenidas por clientes de las interfaces sean liberadas cuando, por ejemplo, el proceso cliente ha caído o la conexión de red se pierde.

Uno de los factores clave para resolver estos problemas es el uso de DCE/RPC como el mecanismo RPC subyacente bajo DCOM. DCE/RPC define reglas estrictas en cuanto al aplanamiento y a quién es responsable de liberar la memoria.

DCOM fue uno de los mayores competidores de CORBA. Los defensores de ambas tecnologías sostenían que algún día serían el modelo de código y servicios sobre Internet. Sin embargo, las dificultades que suponía conseguir que estas tecnologías funcionasen a través de cortafuegos y sobre máquinas inseguras o desconocidas, significó que las peticiones HTTP normales, combinadas con los navegadores web les ganasen la partida. Microsoft, en su momento intentó y fracasó anticiparse a esto añadiendo un transporte extra HTTP a DCE/RPC denominado "ncacn_http" (Connection-based, over HTTP).

Versiones alternativas e implementaciones[editar]

El Open Group tiene una implementación DCOM llamada COMsource, cuyo código fuente está disponible, así como la documentación completa, suficiente para su uso y suficiente también para implementar una versión interoperable de DCOM. De acuerdo con la documentación, COMsource viene directamente del código fuente de Windows NT 4.0, e incluso incluye el código fuente de un Servicio de Registro de Windows NT.

El equipo de Wine también está implementando DCOM. Lo hacen para conseguir la interoperabilidad binaria, y no están interesados en la parte de distribución sobre la red de DCOM, que es proporcionada por MSRPC. Si bien se centran en implementar representación de datos en red a través de los APIs de Microsoft, dicha implementación tratará de ser tan compatible como sea posible con MSRPC.

Notas[editar]

  1. Pro VB 2010 and the.NET 4.0 Platform October 19, 2010 | ISBN 1-4302-2985-3 | ISBN 978-1-4302-2985-8 pag 1063
  2. Pro C# 2010 and the.NET 4 Platform May 14, 2010 | ISBN 1-4302-2549-1 | ISBN 978-1-4302-2549-2 | Edition: 5, pag 1014

Véase también[editar]

Enlaces externos[editar]