Service Oriented Architechture and Oracle
Download
Report
Transcript Service Oriented Architechture and Oracle
Service Oriented Architecture
and
Oracle
Aleksander Stanev
Bankservice Plc.
Agenda
Definition
Explanation
Broader picture - Integration
SOA and BPEL
Oracle implementation of SOA and BPEL
Background on Service Oriented
Architecture
CORBA
MS COM
EJB component model
Web Services
SOA Definition
Service Oriented Architecture is:
An Application Architecture that is designed to
achieve loose coupling among interacting
software applications. SOA provides greater
flexibility in developing, integrating, and
managing Enterprise Applications
SOA Definition 2
Service-Oriented Architecture is:
An application architecture in which all functions, or
services, are defined using a description language and
have invokable interfaces that are called to perform
business processes. Each interaction is independent of
each and every other interaction and the interconnect
protocols of the communicating devices. Because
interfaces are platform-independent, a client from any
device using any operating system in any language
can use the service.
SOA Definition 3
Service-Oriented Architecture is:
A set of components which can be invoked,
and whose interface descriptions can be
published and discovered
World Wide Web Consortium (W3C)
Service Definition
Service is:
A unit of work done by a service provider to
achieve desired end results for a service
consumer. Both provider and consumer are
roles played by software components
Service Request
Service
Consumer
Service
Provider
Service Response
Properties of a Service
Invokable Over a Network
Transport Type
Payload Format
Interoperable
Discovery and Lookup
Agenda
Definition
Explanation
Broader picture - Integration
SOA and BPEL
Oracle implementation of SOA and BPEL
Services and SOA
A service in SOA is an exposed piece of
functionality with three major properties:
The interface contract to the service is
platform-independent.
The service can be dynamically located and
invoked.
The service is self-contained. That is, the
service maintains its own state.
The Service-Oriented Approach
SOA is a design and a way of
thinking about building software
components.
–
–
–
–
Use-Based Solely Published Contract
Network Addressable Interface
Stresses Interoperability
Dynamically Discovered and Used
The Benefits of a SOA
Better Return on Investment
Code Mobility
Focused Developer Roles
More Security
Better Testing/Fewer Defects
Support for Multiple Client Types
The Benefits of a SOA (2)
Service Assembly
Better Maintainability
More Reuse
Better Parallelism in Development
Better Scalability
Higher Availability
SOA Lifecycle
Integrate
Develop
Orchestrate
Analyze
Deploy
Access
Manage
Agenda
Definition
Explanation
Broader picture - Integration
SOA and BPEL
Oracle implementation of SOA and BPEL
“Integration accounts for 35% of
Application Implementation and
Maintenance Costs”
- Gartner Group
Today Integration
Point-to-Point Integration is difficult to
manage and maintain over time
Proprietary Integration Brokers and
Messaging Solutions means customers are
‘locked in’ to vendors
Integrating Integration products is
commonplace
License and Consulting costs are too
prohibitive for mainstream adoption
Industry Progress
Technology
Service
Oriented
Process
Integration
Data
Integration
Composite Applications
SOA approach to Integration
Comprehensive Standards
EAI merging with BPM
Distinct Integration Patterns
Some Standards but mainly Proprietary
Traditional EAI
Message Oriented Middleware
Proprietary and Vendor Specific
Time
Gartner
The 2004 Application Integration, Application
Platform and Architecture Hype Cycle
Visibility
Advanced
Web
Services
Key: Time to Plateau
Less than two years
Two to five years
Open Source J2EE
Enterprise Architecture Tools
BPM
Suites
Service-Oriented
Architecture
Five to 10 years
More than 10 years
Enterprise Service Bus
Business Activity
Monitoring
Metadata
Management
Application Platform Suites
Business Process
Execution
Language
XML Data Integration Servers
Mobile Middleware
Enterprise Information
Integration
Web Services
Web Services
Controllers
Application Management
B2B Gateways
Integration Registries
Distributed Shared
Memory Platforms
Agent-Based Integration
Technology
Trigger
Business Process
Management
Basic
Web
Services
Integration
Suites
Complex Business Events
Vocabulary-Based Transformation
Integration Metadata Management
Business Process Networks
Peak of Inflated
Expectations
Portal
Products
Microsoft
.NET
Application
Platform
Trough of
Disillusionment
Maturity
Programmatic
Integration
Servers
Composite
Applications
J2EE
MessageOriented
Middleware
Business
Process
Analysis
Presentation Integration Servers
J2EE Connector
Business Architecture
Rule Engines
Integration
Service
Providers
Slope of
Enlightenment
As of June 2004
Plateau of
Productivity
Agenda
Definition
Explanation
Broader picture - Integration
SOA and BPEL
Oracle implementation of SOA and BPEL
BPEL
Cornerstone of Service Oriented Architecture
Business Process Execution Language
OASIS Specification – current version is 1.1
Origins in Web Services Flow (WSFL) and
XLANG
Standard XML representation of a business
process
Strong Support by Oracle, Microsoft, IBM,
BEA, SAP, SUN and others
Why BPEL?
Complements Web Services
Integration
Eliminates Vendor Lock-in
Accelerates the time to deploy new
services
Maximizes re-use and interoperability
Future proofs your business process
definitions
Agenda
Definition
Explanation
Broader picture - Integration
SOA and BPEL
Oracle implementation of SOA and
BPEL
Oracle BPEL Process Manager
Result of the acquisition of Collaxa –
offered the leading BPEL Implementation
in the market
Oracle becomes the first and only platform
vendor to provide a robust, proven native
BPEL runtime in production
Available for download today at OTN:
http://otn.oracle.com/bpel
Oracle BPEL – Orchestrating Web
Services
Open standards (Java/J2EE, JMS, XML,
SOAP, WSDL)
State and context management
Loosely-Coupled Services
Parallel Processing
Exception Management
Events/Notifications
Oracle BPEL – Orchestrating Web
Services (2)
Open Nested Transactions
Scalability and Reliability
Management, Administration and
Business Visibility
Version Control
Audit Trailing
Support for Existing Infrastructure
Oracle BPEL Process Manager
Enterprise-strength infrastructure for designing, deploying
and managing BPEL business processes.
• Comprehensive and native
Eclipse,
JDeveloper
BPEL Designer
BPEL implementation
• Easy-to-use modeling tool
BPEL
DEHYDRAT
E
BPEL Process Manager
WSDL Binding
• Flexible binding framework
Built-in Integration Services
Web Service
JC
A
Email
XQuery XSLT
Oracle
DB
Oracle
Database
User BPELJ
Tasks
Core BPEL Engine
J2EE Application Server
(WebLogic, Oracle AS, JBoss, WebSphere)
BPEL Console
MANAGE
JMS
• Scalable and reliable engine
• Rich management and
monitoring
• Support for Oracle AS,
WebLogic and WebSphere
• Get up and running in less
than 15 minutes!
Oracle BPEL Key Components
BPEL Designer
Core BPEL engine
Built-in integration services
Extensible WSDL binding framework
BPEL Console
BPEL Design Time
Open support for BPEL. Multi-view support
allows modification at both the graphical and
XML representations.
Simple, easy to use, effective for developing
both simple and complex business
processes
Extensible through code or custom functions
– Transformation and Activities
BPEL Runtime
Supports Tier One J2EE Applications Servers
(OracleAS, Weblogic, Webshpere and
JBoss)
Context Dehydration provides scalability,
high availability and leverages the features of
the Oracle Database
Partition BPEL Server into multiple domains
for more efficient development and testing
environments
BPEL Console
Version and Manage Processes in Flight
Advanced Debugging Capabilities
Out of the Box Performance & Stress
Testing
Simple Deployment and Monitoring
Features which resulted from Customers
deploying in production environments
Oracle BPEL Process Manager - Key
Features
BPEL DESIGNER
MODELING
• Comprehensive BPEL 1.1
WSDL
BINDINGS
BPEL ENGINE
CONNECTIVITY
EXECUTION RUN-TIME
BPEL CONSOLE
MANAGEMENT
MANAGEMENT
• Bindings to 100+ backend
systems (JCA)
• Comprehensive BPEL 1.1
• Visual Monitoring
• Visual Modeling Tool
• Sync. Messaging
• Auditing
• Native Java Embedding
• JMS Bridge
• Async. Messaging
• BPEL Debugging
• XML Facade
• .NET, Axis, Workshop, Glue,
Systinet, interop
• Context Dehydration
• In-flight Administration
• Reliability
• Performance Tuninng
• Side-by-side versioning
• Task Management
• Compensating Transactions
• Partitioning/Domains
• XQuery Transformation
• Detailed Error Reporting
• Ant-based build and
deployment framework
• Versioning
• User Tasks/Workflow
• Email with Attachment
• Clustering
• Large XML documents
BPEL, XQuery, XSLT, WS-ADDRESSING
Oracle BPEL - FEATURE SUMMARY
Демонстрация
Въпроси?