·
Windows Communication Foundation (WCF) is a
platform rich in features necessary for building distributed service-oriented
applications.
·
WCF is a service that exposes one or more
endpoints.
·
Each of which exposes one or more service
operations.
·
The endpoint of a service
specifies an address where the
service can be found.
·
A binding
that contains the information that describes how a client must communicate with
the service, and
·
A contract
that defines the functionality provided by the service to its clients.
·
WCF allows creating clients that access
services. Both the client and the service can run in pretty much any Windows
process—WCF doesn’t define a required host. Wherever they run, clients and
services can interact via SOAP, via a WCF-specific binary protocol, and in
other ways.
WCF-based clients and services can run in
any Windows process.
·
As the scenario described earlier suggests, WCF
addresses a range of problems for communicating applications. Three things
stand out, however, as WCF’s most important aspects:
·
Unification of the original .NET Framework
communication technologies
·
Interoperability with applications built on
other technologies
·
Explicit support for service-oriented
development.
Rather than requiring different
technologies for different communication styles, WCF provides a single unified
solution.
·
An application built on WCF can interact with
all of the following:
·
WCF-based applications running in a different
process on the same Windows machine
·
WCF-based applications running on another
Windows machine
·
Applications built on other technologies, such
as Java EE application servers, that support standard Web services. These
applications can be running on Windows machines or on machines running other
operating systems, such as Sun Solaris, IBM z/OS, or Linux.
·
Messaging: SOAP is the foundation protocol for
Web services, defining a basic envelope containing a header and a body.
WS-Addressing defines additions to the SOAP header for addressing SOAP
messages, which frees SOAP from relying on the underlying transport protocol,
such as HTTP, to carry addressing information. The Message Transmission
Optimization Mechanism (MTOM) defines an optimized transmission format for SOAP
messages based on the XML-binary Optimized Packaging (XOP) specification.
·
Metadata: The Web Services Description Language
(WSDL) defines a standard language for specifying services and various aspects
of how those services can be used. WS-Policy allows specification of more
dynamic aspects of a service’s behavior that cannot be expressed in WSDL, such
as a preferred security option. WS-MetadataExchange allows a client to request
descriptive information about a service, such as its WSDL and its policies, via
SOAP. Beginning with the .NET Framework 4 release, WCF also supports WS-Discovery.
This broadcast-based protocol lets an application find services available
elsewhere on its local network.
·
Security: WS-Security, WS-Trust and
WS-SecureConversation all define additions to SOAP messages for providing
authentication, data integrity, data privacy and other security features.
·
Reliability: WS-ReliableMessaging defines
additions to the SOAP header that allow reliable end-to-end communication, even
when one or more SOAP intermediaries must be traversed.
·
Transactions: Built on WS-Coordination,
WS-AtomicTransaction allows using two-phase commit transactions with SOAP-based
exchanges.
·
Only WSE 3.0 can interoperate with WCF—earlier
versions cannot.
Every
WCF service has three primary components:
·
A service class, implemented in C# or Visual
Basic or another CLR-based language, that implements one or more methods.
·
A host process in which the service runs.
·
One or more endpoints that allow clients to
access the service. All communication with a WCF service happens via the
service’s endpoints.
References:
No comments:
Post a Comment