Back to the 2025 paper

Module III: Basics of Web Programming

20257m

What are Distributed Object Models? Compare CORBA, DCOM, and EJB.

Worked SolutionAI Assisted

Answer: Distributed Object Models — Comparison of CORBA, DCOM, and EJB

1. What is a Distributed Object Model?

A Distributed Object Model (DOM) is an architectural paradigm in distributed computing where software objects located on different physical machines across a network can communicate and invoke methods on one another as if they were residing in the same local memory space.

+-----------------------+                            +-----------------------+
|     Client System     |                            |     Server System     |
|                       |                            |                       |
|   [Client Program]    |                            |   [Remote Object]     |
|          |            |                            |          ^            |
|          v            |                            |          |            |
|     [Stub/Proxy]      |                            |   [Skeleton/Adapter]  |
|          |            |                            |          ^            |
|          v            |                            |          |            |
|    [ORB / Runtime]    | === Network Communication => |    [ORB / Runtime]    |
+-----------------------+       (IIOP / RPC / RMI)   +-----------------------+

Core Mechanisms:

  • Stub (Client Proxy): Marshals method parameters and serializes calls across the network.
  • Skeleton / Dispatcher: Unmarshals parameters on the remote server, invokes the actual method, and serializes the return value back.

2. Overview of CORBA, DCOM, and EJB

A. CORBA (Common Object Request Broker Architecture)

  • Specification: Defined by the Object Management Group (OMG) as an open vendor-neutral standard.
  • Key Feature: Truly platform-independent and language-independent. Interfaces are defined using OMG IDL (Interface Definition Language).
  • Communication: Uses an ORB (Object Request Broker) and communication protocol IIOP (Internet Inter-ORB Protocol).

B. DCOM (Distributed Component Object Model)

  • Specification: Developed by Microsoft as a network extension of COM (Component Object Model).
  • Key Feature: Deeply integrated into Windows OS; uses Microsoft RPC (Object RPC).
  • Limitation: Windows-centric and proprietary, with limited cross-platform interoperability.

C. EJB (Enterprise JavaBeans)

  • Specification: Developed by Sun Microsystems / Oracle (now part of Jakarta EE).
  • Key Feature: Pure Java-centric server-side component architecture for building transactional, secure, scalable enterprise business logic.
  • Container Architecture: Runs inside an EJB Container that automatically handles transactions, security, concurrency, connection pooling, and lifecycle.

3. Detailed Comparison Matrix

Parameter CORBA DCOM EJB
Governing Body Object Management Group (OMG) Microsoft Sun / Oracle / Jakarta EE
Platform Support Platform Independent (Unix, Linux, Windows) Windows Centric (Limited Unix support) Cross-Platform (Any Java-supported OS)
Language Support Multi-language (C++, Java, Python, Ada, COBOL) Multi-language on Windows (C++, VB, C#) Java Only
Interface Definition OMG IDL (Interface Definition Language) Microsoft IDL (MIDL) Java Interfaces (Local / Remote)
Underlying Protocol IIOP (Internet Inter-ORB Protocol) ORPC (Object Remote Procedure Call) RMI / IIOP
Enterprise Services Basic CORBA services (Naming, Event, Security) Microsoft MTS / COM+ Full Container Services (JTA, JPA, Security, Pooling)
Architecture Model Client-Server with ORB middleware Binary COM components over network Component-Container model
Primary Strength Universal vendor & language interoperability High performance on Windows enterprise environments Rapid enterprise development with built-in declarative services
Weakness Steep learning curve, complex configuration Windows lock-in, poor firewall traversal Restricted to Java ecosystem

Conclusion

  • CORBA is ideal for heterogeneous legacy integration across multiple programming languages and OS platforms.
  • DCOM provided high performance in pure Microsoft Windows environments before modern Web APIs.
  • EJB remains the enterprise standard for pure Java distributed systems, offering automated transactional and container-managed persistence capabilities.

Similar questions