Microsoft Distributed Technology
Here in this article I will introduce you some of common technologies introduced by Microsoft. Here I will give you a brief introduction upon COM component, DCOM, Enterprise Services, .NET FRAMEWORK REMOTING, MSMQ (Microsoft Message Queue), Windows Services, Web Services and WCF (Windows Communication Foundation.)
COM (Component Object Model)
COM refers as Component Object Model is a technology introduced by Microsoft, which work with Microsoft Family operating systems to enable communication between software components. Developer use COM technology to create re-usable software component, link components together to build application and take the advantage of windows services. We can create COM components by using variety of languages such as C++, Visual Basic etc. A COM component is generally known as COM server because it serves up information or action requested by client. COM component usually take the form of an exe, dll or ocx file.
DCOM (Distributed Component Object Model)
DCOM refers as Distributed Component Object model which provides necessary infrastructure to enhance COM components for their use over the network. It handles the low level detail of communication between the components separated by machine boundary. DCOM is a system of software objects design to be reusable and replicable. It is an extension of COM component which allows COM component to communicate across network boundaries. DCOM uses the RPC mechanism to transparently send and receive information between COM components i.e. client and server. DCOM was first made available in 1995 with the initial release of Windows NT 4.
DCOM serve the same purpose as IBM’s DSOM protocol which is most popular implementation of CORBA.
COM+ (Component Services)
COM+ is an evolution of Microsoft Component Object Model (COM) and Microsoft Transaction Server (MTS). It is also known as integration of two Microsoft Technology such as COM and DCOM. COM+ handles many of the resource management task itself which previously you handled by writing some programs such as thread allocation and security. COM+ also make your application more scalable by providing thread pooling, object pooling and just in time object activation.
.NET remoting enables you to build widely distributed application. .NET remoting is a mechanism for communicating between objects which are not in the same process. It is a generic system for different applications to communicate with one another. .NET objects are exposed to remote process, thus allowing interprocess communication. .NET remoting allows an application to make an object termed remote object available across remoting boundaries, which includes different appdomains, process or even different computers connected by a network.
A windows service is a long running executable that performs specific function and which is designed not to require user intervention. Windows service can be configure to start when the operating system is booted and run in the background as well as windows is running or they can be started manually as required. By default windows service does not interact with graphical user interface but we can configure windows service to interact with GUI.
We can use services.msc command to open windows service prompt where we can see all running windows services.
A Web service is an application or component that executes on the computer hosting the Web site rather than the user’s computer. A Web service can receive requests from applications running on the user’s computer, perform operations on the computer hosting the Web service, and send a response back to the application running on the user’s computer. A Web service can also invoke operations in other Web services, hosted elsewhere on the Internet. These are global, distributed applications.
WCF (Windows Communication Foundation)
The Windows Communication Foundation (or WCF) is an application programming interface (API) in .net framework for building connected, service oriented applications. WCF is designed in accordance with service oriented architecture principles to support distributed computing where services are consumed by consumers. Clients can consume multiple services and services can be consumed by multiple clients. These WCF services generally follow WSDL interface (Web Service Description Language) that any WCF client can consume these services. WCF implements many advanced web services such as WS-Addressing, WS-Reliable Messaging and WS-Security.