31
Communication and Execution Protocols 4

Communication and Execution Protocols 4. S ervice O riented A rchitecture

Embed Size (px)

Citation preview

Communication and Execution Protocols

4

SOA WEB SERVICES

ESB

MOM

.NET / J2EEPHP

WSRP

REST / ROA

BPEL HTTP

XML

SOAP

WSDL

UDDI

Service Oriented Architecture

Service Oriented Architecture

PresentationLayer

BusinessLayerDataLayer

ServiceLayer

Web Services

• Call Web Service : retrieveStuff()

Get back some values - Y, Z

• Call Web Service : updateStuff(Z)

Get back some values - A

• Call Web Service : updateMoreStuff(Y, A)

Get back some values - S, H, and X

Return S and H to user

How It Works

!

• Don´t try to build entire applications from service calls

• Strive to reduce granularity

• Error processing must be handled effectively

Warning

INTRA-Enterprise ¨ SOA ¨ - SAP - BIZTalk - MQ Series

Distributed Computing Services - JavaSpaces - Grid and Cloud computing

Alternatives

Enterprise Service Bus

Enterprise Service Bus

Example:

Consider a UNIX shell script in which process A

pipes information into process B. Here the

processes are the services and the shell script iss

the choreographer, AND the operating system that

transfers the messages is a very simple Enterprise

Service Bus

Enterprise Service Bus

Essential Requirements:

• Routing • Event Handling

• Reliability • Monitoring and Administration

• Security • Load Balancing

Enterprise Service Bus

Software:

• Websphere Integration Developer (IBM)

• JDeveloper (Oracle)

• Workflow Foundation (Microsoft)

Message Oriented Middleware

“intelligent queuing HUBS “

Message Oriented Middleware

• Websphere Interchange Server (IBM)

• Fusion (Oracle)

• Queue Manager (Microsoft)

Software:

System Analysis and Program development

(SAP) is a German software corporation that provides enterprise software

applications and support to businesses of all sizes globally. Headquartered

in Walldorf, Germany, with regional offices around the world, SAP is the

largest enterprise software company in the world (as of 2009). It is also the

largest software company in Europe and the fourth largest globally. The

company's best known products are its SAP Enterprise Resource Planning

(SAP ERP) and SAP BusinessObjects software. SAP was founded in June

1972 as Systemanalyse und Programmentwicklung by five former IBM

engineers in Mannheim, Baden-Württemberg .

Common Object Request Broker Architecture

is a standard defined by the Object Management Group (OMG) that

enables software components written in multiple computer languages and

running on multiple computers to work together (i.e., it supports multiple

platforms) CORBA is useful because it enables separate pieces of

software written in different languages and running on different computers

to work together like a single application or set of services. More

specifically, CORBA is a mechanism in software for normalizing the

method-call semantics between application objects residing either in the

same address space (application) or remote address space (same host, or

remote host on a network).

Common Object Request Broker Architecture

Version 1.0 was released in October 1991. CORBA uses an interface

definition language (IDL) to specify the interfaces which objects present to

the outer world. CORBA then specifies a mapping from IDL to a specific

implementation language like C++ or Java. Standard mappings exist for

Ada, C, C++, Lisp, Ruby, Smalltalk, Java, COBOL, PL/I and Python. There

are also non-standard mappings for Perl, Visual Basic, Erlang, and Tcl

implemented by object request brokers (ORBs) written for those

languages.

Common Object Request Broker Architecture

The CORBA specification dictates there shall be an ORB through which an

application would interact with other objects. In practice, the application

simply initializes the ORB, and accesses an internal Object Adapter, which

maintains things like reference counting, object (and reference) instantiation

policies, and object lifetime policies. The Object Adapter is used to register

instances of the generated code classes. Generated code classes are the

result of compiling the user IDL code, which translates the high-level

interface definition into an OS- and language-specific class base for use by

the user application. This step is necessary in order to enforce CORBA

semantics and provide a clean user process for interfacing with the CORBA

infrastructure.

.NET

is a Microsoft development environment used to create enterprise

applications or to develop applications that integrate nicely with other

enterprise applications. There are three core pieces of .Net :

1. A runtime environment that ,Net apps rely on to execute

2. Development tools to make the apps that run in this

environment.

3. A number of other loosely related products and services

under the name “.NET” since it makes everything sound

integrated.

.NET

What’s in it?

• Visual Studio

• The .NET Framework

• The .NET Enterprises

• .NET Services

.NET

What’s in it?

• Visual Studio- the development environment C#, Managed C++, VB, Jscript, Visual J#, …

• The .NET Framework

• The .NET Enterprises

• .NET Services

.NET

What’s in it?

• Visual Studio

• The .NET Framework- underlying technologies (libraries, object files, executables, etc) relied on by Visual Studio

• The .NET Enterprises

• .NET Services

.NET

What’s in it?

• Visual Studio

• The .NET Framework

• The .NET Enterprises- Advanced Server ( a supped up Windows OS), SQL Server, Exchange Server, Application Server. BizTalk Server, Commerce Server, ISA Server, …

• .NET Services

.NET

What’s in it?

• Visual Studio

• The .NET Framework

• The .NET Enterprises

• .NET Services- a collection of Internet accessible web services sold by Microsoft. Much like the .NET Framework provides higher-level class libraries that make developers more productive, .NET Services can help developers focus on their application logic rather than building and deploying their own cloud-based infrastructure services.

.NET

• .NET Services

J2EE Java 2 Platform Enterprise Edition :

is a conglomeration of standards for architectures, protocols, languages, APIs, and services that allow companies to deploy applications capable of serving many, many users. J2EE is an Open Source standard owned by Sun Microsystems and marketed by

1. IBM ( as Websphere Application Server)

2. Oracle (as Oracle Application Server)

3. BEA (as WebLogic now owned by Oracle)

4. Red Hat ( as JBoss Application Server)

:

J2EE “Industry Standard” unless

1. You are a Microsoft shop2. You are fixed in older technology client server architechtures

based on C++

3. You own proprietary technology

4. You live in a dream world !

:

REST REpresentational State Transfer -

is a software architecture approach to system interconnection that emphasizes simplicity and uniformity. Created (by Roy Fielding) in response to the fact that SOAP and WSDL are not so simple and uniform.The basic idea is that RESTful architectures try to make it just as easy for software programs to chain through web services as it is for humans to follow hyperlinks across a set of web pages.

Resource Oriented Architecture (ROA) is a specific type of REST architecture that focuses its technology set on HTTP, XML, and URLs.

:Future is Bleak ! WHY?