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?