soa - ceit.aut.ac.irceit.aut.ac.ir/~sa_hashemi/my research/0-selected papers/2... · - scalability...
Post on 18-Mar-2018
237 Views
Preview:
TRANSCRIPT
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
SOA
XML
SOAP
SOAP
WSDL
WSDL
WSDL
WSDL
SOA
SOA
SOA
SOA
[ -p ]
SOA
CRM
- Monolithic - Objects - Component - Interface - SOA
SOA
SOA
[ -p ]
SOA
[ -p ]
SOA
IT
.
SOA
IT
.[ -p ]
SOA
SOA
SOA
SOA
SOA [ -p ]
SOAClientloosely-coupled
[ -p ]
SOA
[ -p ]
:
- Reusability - Interoperability - Scalability - Flexibility
[ -p ]
SOA
[ -p ]
- Cost Efficiency - Customized
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
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
SOAPHeader
SOAP
SOAP
XMLSchemas
SOAP
SOAP
SOAP
SOAPXML-RPC
SOAP
SOAP
SOAP
SOAP
SOAPSOAPXML
HTTP
SOAP [ -p ]
SOAP
WSDLLanguageWeb Services Description
WSDL
WSDLXML
SOAP
IBM
WSDL
IBMAribaW CW C
WSDL
WSDL
WSDLWSDL
HTTP
WSDL
WSDL
WSDL
WSDLWSDL
WSDL
getbooks [ -p ]
WSDL
isbn
WSDL
title
WSDL
WSDLSOAP
WSDL
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 ]
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 ] .
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
.
SOA
SOA
[ -p ]
SOA
- Service Consumer
[ -p ]
:
Mainframe
[ -p ]
[ -p ]
[ -p ]
- Service Provider - Service Registry - Service Contract - Service Proxy - Service Lease
[ -p ]
[ -p ]
SOA
Sun
[ -p ]
SOA
- Modular - Interoperable - Loosely coupled - Interface - Coarse-grained - Location-transparent - Self-healing
[ -p ]
SOA
[ -p ]
[ -p ]
- Modular Decomposability - Modular Composability - Modular Understandability - Modular Protection - Direct Mapping - Sequence Diagram
[ -p ]
[ -p ]
SOA
[ -p ]
[ -p ]
- Service Interface
[ -p ]
[ -p ]
SOA
[ -p ]
SOA
[ -p ]
- Binding Time
- Distributed - Objects
[ -p ]
[ -p ]
- Load Balancer
Clustered
Cluster
[ -p ]
SOA
SOA
SOA
SOA
BEA
[ -p ]
[ -p ]
-SOA Reference Architecture -Presentation Layer
SOA
SOA
[ -p ]
Service Bus
SOA
[ -p ]
[ -p ]
SOA [ -p ]
[ -p ]
ITSOA
Legacy
Mainframe
[ -p ]
-Enterprise - Enterprise Application Integration
SOA
SOA
SOA
[ -p ]
SOA
SOA
SOA
SOA
SOA
[ -p ]
SOA
SOA
[ -p ]
-SOA
IBMSOA
IBM
SOA[ -p ]
[ -p ]
[ -p ]
[ -p ]
[ -p ]
SOA
SOA
xml
[ -p ]
[ -p ]
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
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 /"
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>
<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>
<MultiplyResponse xmlns="http://localhost/"> <MultiplyResult> </MultiplyResult> </MultiplyResponse> </soap :Body> </soap :Envelope>
SOA
SOA
SOASOA
SOA
SOAJAVA.Net
SOA
SOA
SOA
[ ] 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=
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.
top related