Technology | Advantages | Disadvantages |
---|
Lib | Reusable component | Statically link i.e., links at linking time. |
DLL | Explicit linking | For each and every client there should be separate copy of DLL. |
COM | Location transparency and out of proc (Host is hosting the component and client is communicating with host) | Useful only when on the same machine and it doesn’t work on distributed environment. |
DCOM | Works well on distributed environment using Microsoft Transaction Server (MTS) | Not reliable (If server is down and request comes to the server then the request is not handled anywhere. |
COM+ | Reliability, MSMQ, Object pooling, JIT invocation, can be created using .net and C++. | If programmer tries to create COM+ component using C++ then it requires writing a lot of code.
Communication can be done using TCP and supported protocol is binary only. |
Remoting | Supports TCP/binary, http/xml and IPC using named pipe | Only clients created in .net can use remoting |
Web Service | Platform independent, Only host on IIS, Security can be provided using web service enhancements | Supports only http protocol and xml data format. |
WCF | Unified model of creation of distributed environments | |