Distributed Component Object Model
Sign in to saveAlso known as DCOM, Network OLE
software for communication between software components
Article · Español
El Modelo de Objetos de Componentes Distribuidos (Distributed Component Object Model, DCOM) es una tecnología propietaria de Microsoft para desarrollar componentes de software distribuidos sobre varias computadoras y que se comunican entre sí. Extiende el modelo Component Object Model (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 Microsoft .NET. El agregado de la "D" a COM fue por el uso extensivo de DCE Remote Procedure Call (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 Remote Procedure Call (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).
Abstract from DBpedia / Wikipedia · CC BY-SA