Top Banner
SOA
43

SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

Mar 18, 2018

Download

Documents

buique
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

Page 2: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...
Page 3: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

Page 4: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

SOA

Page 5: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

XML

SOAP

SOAP

WSDL

WSDL

WSDL

WSDL

SOA

Page 6: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

[ -p ]

SOA

CRM

- Monolithic - Objects - Component - Interface - SOA

Page 7: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

[ -p ]

SOA

[ -p ]

SOA

IT

.

SOA

IT

.[ -p ]

SOA

Page 8: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

SOA [ -p ]

SOAClientloosely-coupled

[ -p ]

SOA

[ -p ]

:

- Reusability - Interoperability - Scalability - Flexibility

Page 9: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

SOA

[ -p ]

- Cost Efficiency - Customized

Page 10: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

IBM BEASUN SOA

SOA

- SOA

SOA

SOA

SOA

SOA

[ -p ]

XMLeXtensible Markup Language

XML

WWWW C

HTMLHTML

W CHTMLHTML

CSSCascade Style Sheet

W CXMLXMLSGMLStandard Generalized Markup

Language

XMLXML

XML

XMLXML

XMLPCPDA

XML

XML ParserXML

XMLXML

XMLXMLDTDDocument Type

Definition

- Container

Page 11: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

XMLDTDDTD

DTDXML

XML

XML

XML

XML

XML

XMLXML

[ -

p ]

SOAPSimple Object Access Protocol

SOAP

DeveloperMentorUserLand

SOAP

SOAP

SOAP

SOAP

SOAP

XMLSOAPXML

XML

SOAPHTTP

LANHTTP

Firewall

SOAPEnvelopeHeaderBody

Page 12: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOAPHeader

SOAP

SOAP

XMLSchemas

SOAP

SOAP

SOAP

SOAPXML-RPC

SOAP

SOAP

SOAP

SOAP

SOAPSOAPXML

HTTP

SOAP [ -p ]

Page 13: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOAP

WSDLLanguageWeb Services Description

WSDL

WSDLXML

SOAP

IBM

WSDL

IBMAribaW CW C

WSDL

WSDL

WSDLWSDL

HTTP

WSDL

Page 14: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

WSDL

WSDL

WSDLWSDL

WSDL

getbooks [ -p ]

WSDL

isbn

WSDL

title

WSDL

WSDLSOAP

WSDL

Page 15: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

WSDL

UDDIUniversal Description , Discovery and Integration

UDDI

IBMAriba

UDDI

B B

UDDIXML

UDDI

UDDI

UDDIUDDI Business RegistryUBRUDDI

IBMSAPHP

White Pages

Yellow Pages

Green Pages

IT

UDDIB B

B B

[ -p ]

Page 16: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

WS-I Basic Profile

WS-I Basic Profile

Web services Interoperability Organization

Basic Profile

.[ -p ]

.Net J EE

J EE

.Net

SOA

SOA

.

J EE

framework

SOA

SOA

JAXB (Java API for XML Binding)

XML

JAXR (Java API for XML Registry) UDDI

XML-RPC (Java API for XML-based Remote Procedure Call)

EE

J EE

.Net .

WSDLSOAP

UDDI

QoS W CWorld Wide)

(Web Consortium

OASIS (Organization for the Advancement of Structured Information Standards)

QoS

.

Web Services Security

SAML (Security Assertion Markup Language)

. Web Services Security

OASIS

[ -p ] .

Page 17: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

. WS-

Reliability

WS-ReliableMessaging

OASIS .

Kerberos

. WS-Policy

.

. BPELWS

WSBPEL (Web Services Business Process Execution Language)

OASIS

. WSBPEL

OASIS .

. WSDM (Web Services for Distributed Management)

WSDM WSDM

.

Page 18: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

[ -p ]

SOA

- Service Consumer

Page 19: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

:

Mainframe

[ -p ]

[ -p ]

[ -p ]

- Service Provider - Service Registry - Service Contract - Service Proxy - Service Lease

Page 20: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

[ -p ]

Page 21: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

Sun

[ -p ]

SOA

- Modular - Interoperable - Loosely coupled - Interface - Coarse-grained - Location-transparent - Self-healing

Page 22: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

SOA

[ -p ]

[ -p ]

- Modular Decomposability - Modular Composability - Modular Understandability - Modular Protection - Direct Mapping - Sequence Diagram

Page 23: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

[ -p ]

SOA

[ -p ]

[ -p ]

- Service Interface

Page 24: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

[ -p ]

SOA

[ -p ]

SOA

[ -p ]

- Binding Time

Page 25: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

- Distributed - Objects

Page 26: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

[ -p ]

- Load Balancer

Page 27: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

Clustered

Cluster

[ -p ]

Page 28: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

SOA

BEA

[ -p ]

[ -p ]

-SOA Reference Architecture -Presentation Layer

Page 29: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

[ -p ]

Service Bus

SOA

[ -p ]

[ -p ]

SOA [ -p ]

[ -p ]

ITSOA

Legacy

Mainframe

[ -p ]

-Enterprise - Enterprise Application Integration

Page 30: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

[ -p ]

SOA

Page 31: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOA

SOA

[ -p ]

SOA

SOA

[ -p ]

Page 32: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

-SOA

IBMSOA

IBM

SOA[ -p ]

[ -p ]

[ -p ]

Page 33: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

[ -p ]

SOA

SOA

Page 34: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

xml

[ -p ]

Page 35: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ -p ]

Page 36: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

C#

Multiply Locally

private void button _Click(object sender, EventArgs e) { int result = Int .Parse(textBox .Text) * Int .Parse(textBox .Text); MessageBox.Show( "Result = " + result, "Calucalated Locally!"); }

Multiply via service

private void button _Click(object sender, EventArgs e) { MathServiceSoapClient sc = new

Page 37: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

MathServiceSoapClient("MathServiceSoap"); int result = sc.Multiply(Int .Parse(textBox .Text), Int .Parse(textBox .Text)); MessageBox.Show("Result = " + result, "Calucalated by Remote Service!"); }

MathService

using System; using System.Web; using System.Web.Services; using System.Web.Services.Protocols;

[WebService(Namespace = "http://localhost/")] [WebServiceBinding(ConformsTo = WsiProfiles.BasicProfile _ )] public class MathService : System.Web.Services.WebService { public MathService () {

//Uncomment the following line if using designed components //InitializeComponent(); }

[WebMethod] public int Multiply(int a , int b) { return a*b; } }

WSDL

<?xml version=" " encoding="utf- " ?> -

<wsdl:definitions xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:tm="http://microsoft.com/wsdl/mime/textMatching/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:mime="http://schemas.xmlsoap.org/wsdl/mime/" xmlns:tns="http://localhost/" xmlns:s="http://www.w .org/ /XMLSchema" xmlns:soap ="http://schemas.xmlsoap.org/wsdl/soap /"

Page 38: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

xmlns:http="http://schemas.xmlsoap.org/wsdl/http/" targetNamespace="http://localhost/" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/">

-

<wsdl:types>

-

<s:schema elementFormDefault="qualified" targetNamespace="http://localhost/">

-

<s:element name="Multiply">

-

<s:complexType>

-

<s:sequence> <s:element minOccurs=" " maxOccurs=" " name="a" type="s:int" /> <s:element minOccurs=" " maxOccurs=" " name="b" type="s:int" />

</s:sequence> </s:complexType> </s:element>

-

<s:element name="MultiplyResponse"> -

<s:complexType> -

<s:sequence> <s:element minOccurs=" " maxOccurs=" " name="MultiplyResult" type="s:int" />

</s:sequence> </s:complexType> </s:element> </s:schema> </wsdl:types>

-

<wsdl:message name="MultiplySoapIn"> <wsdl:part name="parameters" element="tns:Multiply" />

</wsdl:message> -

<wsdl:message name="MultiplySoapOut"> <wsdl:part name="parameters" element="tns:MultiplyResponse" />

</wsdl:message> -

<wsdl:portType name="MathServiceSoap"> -

<wsdl:operation name="Multiply"> <wsdl:input message="tns:MultiplySoapIn" /> <wsdl:output message="tns:MultiplySoapOut" />

</wsdl:operation> </wsdl:portType>

-

<wsdl:binding name="MathServiceSoap" type="tns:MathServiceSoap"> <soap:binding transport="http://schemas.xmlsoap.org/soap/http" />

-

<wsdl:operation name="Multiply"> <soap:operation soapAction="http://localhost/Multiply" style="document" />

-

<wsdl:input> <soap:body use="literal" />

</wsdl:input> -

<wsdl:output> <soap:body use="literal" />

</wsdl:output> </wsdl:operation> </wsdl:binding>

-

<wsdl:binding name="MathServiceSoap " type="tns:MathServiceSoap"> <soap :binding transport="http://schemas.xmlsoap.org/soap/http" />

-

<wsdl:operation name="Multiply"> <soap :operation soapAction="http://localhost/Multiply" style="document" />

-

<wsdl:input>

Page 39: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

<soap :body use="literal" />

</wsdl:input> -

<wsdl:output> <soap :body use="literal" />

</wsdl:output> </wsdl:operation> </wsdl:binding>

-

<wsdl:service name="MathService">

-

<wsdl:port name="MathServiceSoap" binding="tns:MathServiceSoap"> <soap:address location="http://localhost: /WebService /MathService.asmx" />

</wsdl:port> -

<wsdl:port name="MathServiceSoap " binding="tns:MathServiceSoap "> <soap :address location="http://localhost: /WebService /MathService.asmx" />

</wsdl:port> </wsdl:service> </wsdl:definitions>

SOAP

SOAP HTTP

SOAP

POST /WebService /MathService.asmx HTTP/

Host: localhost Content-Type: application/soap+xml; charset=utf-

Content-Length:

<?xml version=" " encoding="utf- "?> <soap :Envelope xmlns:xsi="http://www.w .org/ /XMLSchema-instance" xmlns:xsd="http://www.w .org/ /XMLSchema" xmlns:soap ="http://www.w .org/ /soap-envelope"> <soap :Body> <Multiply xmlns="http://localhost/"> <a> </a> <b> </b> </Multiply> </soap :Body> </soap :Envelope>

HTTP/

OK

Content-Type: application/soap+xml; charset=utf-

Content-Length:

<?xml version=" " encoding="utf- "?> <soap :Envelope xmlns:xsi="http://www.w .org/ /XMLSchema-instance" xmlns:xsd="http://www.w .org/ /XMLSchema" xmlns:soap ="http://www.w .org/ /soap-envelope"> <soap :Body>

Page 40: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

<MultiplyResponse xmlns="http://localhost/"> <MultiplyResult> </MultiplyResult> </MultiplyResponse> </soap :Body> </soap :Envelope>

Page 41: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

SOA

SOA

SOASOA

SOA

SOAJAVA.Net

SOA

SOA

SOA

Page 42: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

[ ] Duane Nickull, Service Oriented Architecture,Whitepaper, Adobe Systems Incorporated,

[ ] Ed Ort, Service-Oriented Architecture and Web Services: Concepts, Technologies, and Tools, SUN,

[ ] James McGovern, Sameer Tyagi, Michael Stevens, Sunil Mathew, Java Web Services Architecture,SUN,

[ ] Surekha Durvasula, Martin Guttmann, Jeffery Lamb, SOA Practitioners Guide Part

SOA Reference Architecture, BEA,

[ ] John Ganci,Amit Acharya,Jonathan Adams, Patterns: SOA Foundation Service Creation Scenario,IBM,

[ ] http://atalebi.com/articles/show.asp?id=

Page 43: SOA - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/My Research/0-Selected Papers/2... · - Scalability -Flexibility [-p] SOA ... XML-RPC SOAP SOAP SOAP SOAP SOAP XMLSOAP SOAP HTTP ...

This document was created with Win2PDF available at http://www.daneprairie.com.The unregistered version of Win2PDF is for evaluation or non-commercial use only.