SOA
Transport - Technology
- HTTP - Java message service - simple mail transfer protocol - HTTPR
key feature of web service
- Web service is self-contained - Web service is self-describing - Web service are modular - Web services and be published, located and invoked across the web - Web service are language independent - Web service are inherently open and standards based - Web services are dynamic - Web service are composable
Web service disadvantage
- binding to web service dynamically require that the content of the UDDI registry be trusted - the soap server footprint is significant and the technology is relatively new - standard for integration of business process, management of transaction and the awareness of the policies of interchanging partners are still under development
Web service advantage
- deliver new IT solution at lower cost - protect investment in IT legacy systems by using web service to wrap legacy software for integration with modern IT systems - integrate their business process with customers and partner at less cost - enter new market and widen their customer base. web service UDDI registries can be discovered on the entire web community
SOA Architecture Layer
1. Function - Transport - Service communication protocol - Service description - Service - Business process - Service Registry 2. Quality of service - Management - Transaction - Security - Policy
Benefit of service oriented architecture
1. Leverage existing assets. 2. Easier to integrate and manage complexity. 3. More responsive and faster time-to-market. 4. Reduce cost and increase reuse. 5. Be ready for what lies ahead.
Web Service Definition
A Web service is a software application identified by a URI, whose interfaces and bindings are capable of being defined, described, and discovered as XML artifacts. A Web service supports direct interactions with other software agents using XML-based messages exchanged via Internet-based protocols
SOA collaboration paradigm
A service consumer do dynamic service location by query the service registry for service that matches its criteria. if the service exists, they registry provides the consumer with the interface contract and the endpoint address for the service.
Advantage of WSDL
As a fundamental requirement for the implementation of Web services, WSDL is required to publish the interface description contract for other services to invoke upon.
Service communication protocol - tech
SOAP
Role of SOA
Service consumer Service provider Service Registry
SOA characteristics
Services are self-contained and modular. Services support interoperability. Services are loosely coupled. Services are location-transparent. Services are composite modules, comprised of components.
Disadvantage of WSDL
The WSDL document does not provide some of the information a potential user may require, such as: - Who provides the service? - What kind of business provides the service? - What the other services are available from this provider? - What quality of service should be expected from this provider? - Is the service free or fee-based? UDDL provide potential source of this information
business process - tech
WSFL and XLANG
WSDL
Web service description language - WSDL specifies the operational characteristics of a Web service using an XML document. It provides a notation to answer the following questions: - What (is this service about)? - Where (does it reside)? - How (can it be invoked)? A Web service is considered as a set of endpoints operating on messages containing either document-oriented or procedure-oriented (RPC) messages. WSDL offers a standard way to abstractly describe the operations and messages: The service interface definition. These descriptions are bound to a specific network protocol and message format to create an endpoint: The service implementation definition
Web service and SOA
Web services are a technology that is well suited to implementing a service-oriented architecture. In essence, Web services are self-describing and modular applications that expose business logic as services that can be published, discovered, and invoked over the Internet. Based on XML standards, Web services can be developed as loosely coupled application components using any programming language, any protocol, or any platform. This facilitates the delivery of business applications as a service accessible to anyone, anytime, at any location, and using any platform. It is important to point out that Web services are not the only technology that can be used to implement a service-oriented architecture. Many examples of organizations who have successfully implemented service-oriented architectures using other technologies can be found. Web services have also been used by others to implement architectures that are not service-oriented. In this publication, however, our focus is on using Web services to implement an SOA
Web service architecture
Web services provides a distributed computing approach for integrating extremely heterogeneous applications over the Internet. The Web service specifications are completely independent of programming language, operating system, and hardware to promote loose coupling between the service consumer and provider
Service description - tech
XML WSDL ebXML
UDDI
a standard that is intended to act as a information broker between consumer and provider. 4 type of primary data types: -businessEntity -businessService -bindingTamplate -tModel all those entries link to WSDL document
Service description - layer
allow loosely couple architecture, the service consumer and service provider should be as independent as possible. thanks to the layer, services can be provided without the need of provider or consumer to care about the other's technical platform or programming language - WSDL and XML
Business process - layer
allows us to create and define complex processes or workflows. Processes are composed from the operations supplied by Web services that can be nested and sequenced according to business requirements.
SOA Definition
an executable unit of code that provides physical black-box encapsulation of related services. its services can only be access through a consistent, published interface that includes and interaction standard. A component must be capable of being connected to other components (through a communication interface) to a larger group.
Web service technology
eXtensible Markup Language (XML) Simple Object Access Protocol (SOAP) Universal Description, Discovery and Integration (UDDI) Web Services Description Language (WSDL)
SOAP (Simple Object Access Protocol)
is a network-, transport-, and programming language- neutral protocol that allow a service consumer to call service provider. in a XML format. SOAP is an application communication protocol SOAP is a format for sending and receiving messages SOAP is platform independent SOAP is based on XML
UDDI - Universal Discovery Description and Integration
is often compared to a yellow page telephone system - Direct request When you need to know the telephone number of a person, one of the easiest ways to get it is to request it from that person directly. That is very often the way to get the mobile number of a person because telephone directories rarely list mobile phone numbers. - Simple aggregate publishing When business people meet, they often exchange business cards. Business cards are a way to provide telephone numbers and additional information, such as fax numbers, e-mail addresses, and so on. Of course, you need to have them printed in the first place, which adds some complexity over the direct request solution. - Directory use It is only on some occasions that people refer to Yellow Pages; for example, to discover a service provider in a domain they are not familiar with. The Yellow Pages Directory provides more information than the other methods but requires a large effort to centralize information and publish it. Similarly for Web services, you can use simple to complex discovery mechanisms to satisfy various business needs: - The exchange of a service description on anything from an e-mail to a diskette can be compared to a direct request. - WS-Inspection Language can be compared to business cards. - The UDDI registries can be compared to Yellow Pages.
Service communication protocol - layer
is the technologies and standards required to supply a transport mechanism between integrated services. Ex. if transport layer is the road between two end point. it is a vehicle that travel on the road, facilitate the transport of package between sender and receiver.
Operation of SOA
publish find bind and invoke
Service - layer
represents the implemented software that can be located and invoked based on a published WSDL interface description
asynchronous
sender of a message does not wait for reply to the message
Service registry - layer
service providers to publish the definition of the services they offer using WSDL and service consumers to find information about the services available. UDDI is used for this role
Service registry - tech
static & dynamic web services UDDI
Transport - layer
the mechanism for moving service request and service response between service consumer and service provider
Service - tech
web services and J2EE web services invocation framework