Windows Communication
Foundation (WCF) WCF is a platform where we
can build any application which is
use for intercommunication in distributed application using predefined and well
defined Interface.It is part of .Net 3.0
Or
It is a platform where we
can create services for the distributed application
Services: It
is a collection of component which takes the request of one or multiple users
give the corresponding response.
Difference between Component and Class?
Homogeneous application---- Class
Heterogeneous application---- Component
Note: - Those class which
work on heterogeneous application is called components.
What
is Distributed Application?
It is an application where
part of run on two or more computer nodes.It is also called Connected System
For
Example: A web application is running on one
machine and a web services that this application is consuming on another
application
Why
build Distrubuted Application?
1.
An enterprise application may need to use
the services provides by another enterprise
For example: An IRCTC Indian
Railways application may be using Payment Getway services for payments
2.
For
better scalability : An enterprise application may have Presention tier,Business tier and Data
Acess tier and each tier running on different machine
What
is Interoperable Application? An
application that can communicate with any other application that is build on
any plateform is called as an interoperable application
For
Example Web services are interoperable application
where as .net remotig services are not means .Net Remoting can consumed only by
another .net application but Web Services can communicate with any application
built on any plateform
What is technology choice
did we have befour WCF build distributed application
- Enteprise Services
- DotNet Remoting
- Web Services
The first client is using
a java application to intract with our services, so for
Interoperability this client wants message to be xml format and protocal to be
http.
Without
WCF to satify the first client requirement we end up implementing and ASMX
services
The second client uses
.Net so for better performance this client
wants message formated in binary over TCP protocal
The
satisfied the second client requirement we end up implementing a remoting
services
Web services and .Net Remoting two different
technologies, and here complete different progaming models so that
developers have to learn different technologies so to unify and bring all the these comunication
technology under one roof Microsoft has come up with a single programing model
that called as WCF
With
Windows Communication Foundation (WCF): We
implement one services and we can configure as many end point as want to support
all the client needs.To support above two client requirement, we
would configure two end point .
In the End Point configuration we specify the
protocals and message formats that we want to use
Service-Oriented Architecture (SOA) is an architectural pattern in computer software design in which
application components provide services to other components via a
communications protocol, typically over a network. The principles of service-orientation are independent of any vendor, product
or technology.
Principle of SOA
1)
Services:
- It is collection of Component which take request and give response.
2)
Services
Consumer: - Who use your service.
3)
Services
Provider: - Who provide service to the consumer.
4)
Services
Registry: - We hold all address of services.
5)
Services
Contract : - Which provider use your service and
which consumer use your service
6)
Services
Leas: - Time duration.
7)
Message:
- The amount of data transfer to server to client
is called message. And you can transfers data in WCF in any format
8)
Service
Proxy: - A virtual copy of service on client is
called services proxy.
9)
Service
Advertise and Discover: - It checks the process
is valid or not using URL of Services.
End Point of WCF:
- It is also called A, B, C in WCF
- A Address (Where)
- B Binding (How)
- C Contract (What)
End Point: It is nothing but
it is like a port that interacts with server.
1) A for Address: - It is nothing, but it is a URL of Service
2) B for Binding:
- the visual studio 4.0 or above.
·
BasicHttpBinding
Basic Web service communication. No security by default
·
WSHttpBinding
Web services with WS-* support. Supports transactions
·
WSDualHttpBinding
Web services with duplex contract and transaction support
·
WSFederationHttpBinding
Web services with federated security. Supports transactions
(above four different binding use for Internet and Security purpose)
·
MsmqIntegrationBinding
Communication directly with MSMQ applications. Supports transactions
·
NetMsmqBinding
Communication between WCF applications by using queuing. Supports
transactions
·
NetNamedPipeBinding
Communication between WCF applications on same computer. Supports
duplex contracts and transactions
·
NetPeerTcpBinding
Communication between computers across peer-to-peer services. Supports
duplex contracts
·
NetTcpBinding
Communication between WCF applications across computers. Supports
duplex contracts and transactions
|
(and this above binding use for Intranet,LAN or Single System )
3) C for Contract: -
- Service Contract (Predefined data type )
- Data Contract(User defined data type)
- Message Contract (SOA architecture for changing protocol )
- Fault Contract ( Error)
0 comments:
Post a Comment