11.07.2015 Views

y - Net Developer

y - Net Developer

y - Net Developer

SHOW MORE
SHOW LESS
  • No tags were found...

You also want an ePaper? Increase the reach of your titles

YUMPU automatically turns print PDFs into web optimized ePapers that Google loves.

amrameshreddy.blog.com26 CHAPTER 2 ■ INTRODUCING WCF BASICSramrameshreddy.blog.comIntroducing COM and DCOMMicrosoft developed COM to enable applications to interact with each other and to promotereusability. COM is the set of specifications that, when followed, allows software componentsto communicate with each other. Each component exposes its functionality through an interfaceand is uniquely identified by global unique identifiers (GUIDs). The advantage of usingCOM is that different components developed in different languages can write these softwarecomponents and interact with each other by using IUnknown and other standard COM interfaces.Most of Microsoft’s products, including Microsoft Office, SQL Server, and evenWindows, are based on COM. Though COM provides the ability to reuse the componentslocally, it was not designed to work well with remote components.Few specifications and extensions had been made that were based on COM and that interactedwith remote components. However, the need for remote method invocations grew substantially.To solve this concern, Microsoft developed DCOM. This essentially is a combination ofCOM and the network protocol that allows you to run a COM object on a remote computer.DCOM was a proprietary wire-protocol standard from Microsoft to extend COM so it could workin distributed environments. DCOM provides an opportunity to distribute your componentacross different locations according to the application requirements. In addition, DCOM providesbasic infrastructure support such as reliability, security, location independence, and efficientcommunication between COM objects that are residing across processes and machines.■Tip Covering DCOM and COM in more detail is beyond the scope of this book, but if you want to delve intoit, we suggest you refer to Inside COM (Microsoft Press, 1997) by Dale Rogerson.The following are the problems with DCOM:• DCOM and other distributed technologies such as CORBA, RMI, and so on, are basedon several assumptions. One of the key assumptions is that one organization will manageall the components in the systems that are interacting with each other. Another isthat the location of a component will not vary from one place to the other. This scenariocan work fine within an organization, but as you cross organization boundaries,the limitations of DCOM become more significant.• Microsoft has invested a lot in DCOM to ensure that calling a remote method is as simpleas calling the local component by simplifying the low-level network communicationrequirements. Most of the time this resulted in bad programming practices by programmers,which resulted in increased network traffic and performance bottlenecks.ramrameshreddyramrameshreddy• DCOM, being based on a proprietary standard, was essentially built taking only theWindows operating systems into account, making it not suited for heterogeneousenvironments.• Another issue with DCOM is that its client is tightly coupled with the server, so anychanges done on the client mandate a modification on the server.

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!