Transcript NET

4

Communication and Execution Protocols

SOA

BPEL ESB MOM REST / ROA PHP WSRP

WEB SERVICES

HTTP XML UDDI WSDL SOAP .NET / J2EE

S

ervice

O

riented

A

rchitecture

Presentation Layer

S

ervice

O

riented

A

rchitecture Business Layer Data Layer Service Layer

Web Services

How It Works •

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

Warning

!

Don

´

t try to build entire applications from service calls

Strive to reduce granularity

Error processing must be handled effectively

Alternatives

INTRA-Enterprise

¨

SOA

¨

- SAP - BIZTalk - MQ Series Distributed Computing Services - JavaSpaces - Grid and Cloud computing

E

nterprise

S

ervice

B

us

Example:

E

nterprise

S

ervice

B

us 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

E

nterprise

S

ervice

B

us Essential Requirements:

Routing

Reliability

Security

Event Handling

Monitoring and Administration

Load Balancing

E

nterprise

S

ervice

B

us Software:

Websphere Integration Developer (IBM)

JDeveloper (Oracle)

Workflow Foundation (Microsoft)

M

essage

O

riented

M

iddleware “intelligent queuing HUBS “

M

essage

O

riented

M

iddleware Software:

Websphere Interchange Server (IBM)

Fusion (Oracle)

Queue Manager (Microsoft)

S

ystem

A

nalysis and

P

rogram 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 .

C

ommon

O

bject

R

equest

B

roker

A

rchitecture

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).

C

ommon

O

bject

R

equest

B

roker

A

rchitecture

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.

C

ommon

O

bject

R

equest

B

roker

A

rchitecture

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 Services

.NET

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.

2.

You are a Microsoft shop 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

RE presentational S tate T ransfer -

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?