Upload
zubin67
View
1.370
Download
1
Tags:
Embed Size (px)
Citation preview
© 2006 IBM Corporation
Software
SOA for the Weband Extreme SOA…
Jerry Cuomo [email protected]
IBM FellowWebSphere Chief Technology Officer
2
Software
Topics –
Radically Simplifying Middleware
SOA and Web 2.0
XD Business/Object Grid
Real-time and Event-Driven SOA
SOA Registry and Governance
3
Software
Web 2.0 – What does it mean to me ?
technology
sociology
People BehaviorNetworking
Radical Simplification
Mash-ups
AJAX JSONREST
RSS
ATOM
Wikis Blogs
Harnessing Collective Intelligence
PHPHTTP
4
Software
Technology Attributes of Web 2.0
RSS/ATOM allows someone to link not just to a page, but to subscribe to it, with notification every time that page changes.
Control over unique, hard-to-recreate data sources that get richer as more people use them. "SQL is the new HTML." Database and content management is a core competency of Web 2.0 companies.
XML data over HTTP, in a lightweight approach sometimes referred to as REST (Representational State Transfer) as an alternative to SOAP
AJAX incorporating: XHTML and CSS, DOM, XML and XSLT;, XMLHttpRequest and JavaScript allowing information to be mashed up into new interactive portals."
Feeds
LightweightProgramming
Model
Rich UserExperience
A website or Web 2.0 application that uses content from more than one source to create a completely new service. Content used in mashups is typically sourced from a third party via a public interface or API. Other methods of sourcing content for mashups include Web feeds (e.g. RSS or Atom) and JavaScript.
Mash-ups
Wikis
5
Software
Core Competencies of Web 2.0 Companies
Harnessing collective intelligence
Users must be treated as co-developers, in a reflection of open source development practices. The open source dictum, "release early and release often
Trusting users as co-developers
Services, not packaged software, with cost-effective scalability
Leveraging the long tail through – Communities and Customer self-service and ad hoc B2B
Collectiveintelligence
Perpetual Beta
Users
Services
LeveragingLong-Tail
The Web is about content - HTML, forms, images, audio, … Application interfaces and data surface through Web pages and feeds. Mashups are an additional, personal approach to integration that builds on content and complements WS-*.
Content
6
Software
Web
Enterprise
RESTJSON
XML RSS
ATOM
DB2LegacyCICSIMS
J2EE
App ServerWAS, CE, Tomcat
WPS, ESB, Portal
Enterprises are exposing more services and feeds to the WebGlobal SOA
SOAPWS-* JMSMOM
“Bridging Web and Enterprise SOA”mashups
Enterprise mashupsComposite Applications
…and consuming more services and feeds from the Web
Software
eBay APIs – Driving volumes of transactions
eBay Web Services supports some 2.5 billion API calls per month
Approximately half of all listings on eBay.com involve eBay Web Services
25,000 outside developers are using the APIs
Participating developers have produced more than 1,600 applications
8
Software
Bridging Web and Enterprise SOA
Enterprise SOAWeb SOA
RSSWeb SOA
Bridge
ATOMJSON
REST
AJAX
XMLPHP
EnterpriseEnterpriseMASHUPSMASHUPS
FEEDS
.NET
J2EEWSDL
CICS
WS-*
MOM
SOAP
Ruby
J2SE
JDBC
JMS
FEEDS
FEEDS
9
Software
Components of the Web.Zero platform
Consistent management of “.0” assets.MGMT.0
Quality of Services utilities for overload protection (data-base connection manage, session cache, virtual machine pool, application load balancing
XD.0
Services and tools need to client-side and server side mash-upsMASHUP.0
Services and tools for creating simple work flow (bpel--), mediations and simple business rules
SOA.Zero
Services and tools for access data and caching data from any of the .0 platforms. Language integrated SQL for Java and PHP
DATA.Zero
Dojo toolkit, plus IBM utilities for Web-based Pub/SubAJAX.Zero
IBM PHP distribution, built on open source from php.net, plus MVC framework and IBM utilities for Rest/Atom Services
PHP.Zero
Lightweight Java Environment (CGI-Like), MVC Framework plus Framework for creating and access Feeds (ATOM) & Services (REST)
Java.Zero
The “Zero” extension after Java, PHP, etc., implies a level of The “Zero” extension after Java, PHP, etc., implies a level of consistency and shared convention in the areas of programming & consistency and shared convention in the areas of programming & component models, shared-services, deployment and managementcomponent models, shared-services, deployment and management
10
Software
PRELIMINARY STRATEGY - IBM Web.Zero PlatformSOA meets the Web
Web.Zero Market-place provides a place for customers and partners to collaborate around a common platformVibrant collections of skills and services
Subscription-based model to access high-value components
Web.Zero as a development methodologyAffiliated Open Source project defining conventions for constant programming model, deployment model, administration for PHP, Java, Ajax based Web 2.0 applications
Use public Blogs and Wikis to discuss product development, Source code, Examples, Bugs, etc.
Web.Zero Platform as an entry level SOA PlatformAppeal to customers and partners with basic SOA needs (e.g., Departments and SMB)
Create Situational Applications using PHP, Java and AJAX
Create Mash-up style applications without programming
Web.Zero Platform as a bridge between Web and Enterprise SOAComponents of Web.Zero can be embedded in the IBM SOA platform allowing a simple on-ramp to Enterprise SOA
Tech
nolo
gyS
trate
gySo
ciol
ogy
Stra
tegy
11
Software
Web.0 CommonServices& Libraries
MASHUP.0
QEDWiki
AJAX.0
XD.0
(QoS
)
DB2
LegacyCICSIMS
SOAP
SQL
REST
J2EE
J.0
BrowserPlatform
Enterprise SOAWeb.ZeroService Platform
Web.ZeroComposition and Mashups
PRELIMINARY - IBM Web.Zero Platform Architecture
dojo
PHP.0
Java.0
Ruby.0, …
ATOM SOAP
App ServerWAS, CE, Tomcat
WPS, ESB, PortalJava
Web 2.0 Management & Deployment Tools
Workflow
Rules
Mediations
SOA.0
Session
Messaging
Data Access
…
SendMail
REST-SOAP
IBM Confidential
12
Software
Java Zero: Simplifying Assumptions
Application-centric (Where’s the container ?) Simplified Runtime Model (Think CGI) “Pay as you go” approach with libraries
for extension (Think C/C++) Goal is for base-footprint to be smaller than Tomcat
Simplified Programming Model (Think PoJos) PoJo’s plus annotations with Injection (Think Spring) Simple MVC Framework (Think RoR)
RESTful (Where’s the WSDL ?) Methods on Objects can be exposed as a REST Service with a single
annotation (Think SCA-lite)
Convention over configuration Everything done using code, annotations and simple property files Configuration is optional – reasonable behavior without any configuration
13 SOA on your terms and our expertise
WebSphere Service Registry and Repository
Topics –
Radically Simplifying Middleware
SOA and Web 2.0
XD Business/Object Grid
Real-time and Event-Driven SOA
SOA Registry and Governance
14 SOA on your terms and our expertise
WebSphere Service Registry and Repository
ObjectGrid – Information Fabric
Characteristics High end, mission critical OLTP
applications
High Write/Low Read Ratios
Elements5. Partitions: WebSphere Partitioning
Facility (WPF)
6. Caching: XD Object Grid
7. WLM: Partition aware routing in ODR, EJBs
8. HA: High Availability Manager
9. Autonomics: Partition Manager MBean, Application Placement Controller
15 SOA on your terms and our expertise
WebSphere Service Registry and Repository
On-Line Transaction Processing (OLTP) Traditional OLTP Pattern
Requests Object Grid (XD) Data – DB2
Router
1. Requests are evenly sprayed to WAS2. Transactions are pushed back to the database to endure consistency3. Database becomes bottleneck and prevents scaling
16 SOA on your terms and our expertise
WebSphere Service Registry and Repository
WebSphere Information Fabric– Partitioningusing XD Object Grid
Requests Data – DB2
Router
1. Partitioning
Object Grid (XD)
17 SOA on your terms and our expertise
WebSphere Service Registry and Repository
WebSphere Information Fabric – Cachingusing XD Object Grid
Requests Data – DB2
Router
1. Partitioning2. Caching
Object Grid (XD)
18 SOA on your terms and our expertise
WebSphere Service Registry and Repository
WebSphere Information Fabric – WLMusing XD Object Grid
Requests Data – DB2
Router
1. Partitioning2. Caching
1. WLM
Object Grid (XD)
19 SOA on your terms and our expertise
WebSphere Service Registry and Repository
WebSphere Information Fabric – High Availabilityusing XD Object Grid
Requests Data – DB2
Router
1. Partitioning2. Caching
1. WLM2. High Availability
HA Manager XObject Grid (XD)
20 SOA on your terms and our expertise
WebSphere Service Registry and Repository
WebSphere Information Fabric – Repartitioningusing XD ObjectGrid
Requests Data – DB2
Router
1. Partitioning2. Caching
1. WLM2. High Availability
HA Manager
X1. Re-Partitioning
Object Grid (XD)
21 SOA on your terms and our expertise
WebSphere Service Registry and Repository
Total TPS (cluster)
0
500
1000
1500
2000
2500
3000
3500
1x14 2x14 3x14 4x14 5x14 6x14
Total TPS (cluster)
XD Object Grid - Test Results from the Lab
MxN means M boxes with N threads driving work.Average response time is 31ms
All networks are Gb ethernet usingthe blade switch on the center.
Topology
Over 3000 transactions
Linear Scaling(over 6 blades)Heavy weight-Transactions
22 SOA on your terms and our expertise
WebSphere Service Registry and Repository
Topics –
Radically Simplifying Middleware
SOA and Web 2.0
XD Business/Object Grid
Real-time and Event-Driven SOA
SOA Registry and Governance
23
Software
Dimensions / Levels of Event Infrastructure Capability
Message at a time filter / route Data Warehouse
Single serverSequences threshholds, groups OLAP
Datamining
Event Server clustersGeneral multi CEP Event
Stream pattern net
Specifications assembly
100’s
events/sec/server
Transactional
OLTP
Managed ESB with event services
Integration with Tools for
processes, distributed
workflows deployment
1000’s events/sec/serverNear real
Time
(< sec)
Collaborating domains Tools for
integrating content
behavior models,
Soft real
Time
(scheduled, ms)
Internet scale
100,000’s endpoints
Inductive
- Untrained patterns
- trained pattern detect
100,000’s events/sec/server
Hard real
Time
(deterministic, us)
ScalabilityEvent Pattern Programming
Richness Ease of
use
Event Throughput Responsiveness
Msgs DB
Incr
easi
ng
resp
onsi
vene
ss/c
apab
ility
Financial market information and program trading
Agile enterprise integrated C and C RFID, retail, distribution, manufacturingHome healthcare monitoring
Online Gaming
Homeland security information analysis and reduction
24
Software
Message at a time filter / route warehouse
Single serverSequences threshholds, groups OLAP
Datamine
Event Server clustersGeneral multi CEP Event
Stream pattern net
Specifications assembly
100’s
events/sec/server
Transactional
OLTP
Managed ESB with event services
Integration with Tools for
processes, distributed
workflows deployment
1000’s events/sec/serverNear real
Time
subsec
Collaborating domains Tools for
integrating content
behavior models,
Soft real
Time
(scheduled, msec
Internet scale
100,000’s endpoints
Inductive
- Untrained patterns
- trained pattern detect
100,000’s events/sec/server
Hard real
Time
(deterministic, us
Scale Out Event Pattern Programming
Richness Ease of
use
Event Throughput Responsiveness
Msgs DB
Current IBM Middleware and advanced technology coverage
WMQ
WPM
DB2ACT2
ESB routing
CEI
BPM in WBI
Derby
Incr
easi
ng
resp
onsi
vene
ss/c
apab
ility
GAP
GAPGAP
GAPWII Dstream
25
Software
EDA Approach and Progress
SWG approach to event-driven applications will focus on three basic thrusts: Highlight existing event-driven application capabilities to clients around existing product set
Invest in enhancements to existing run-times, programming model and tools to support specific classes of EDAs and improve ease of implementation
Invest in new “real-time” middleware stack (and potentially appliances) to meet specific QoS attributes not possible with existing middleware stack.
Progress to date: Project Marian
• Addressing the requirement for real-time messaging (right up to microseconds response time) for Financial Market Data – being piloted by several top financial companies
• Industry vertical solution combining research code and products– SWG MQ Event Broker + Research RMM (Reliable Multicast Messaging)
WebSphere Real-time Deployments• Real-time Garbage Collection, Real-time Messaging, Class-Pre Compile, Real-time Linux• Government projects currently piloting technology
Acquisition of Datapower• Gigabit SOA processing • XML, Web Services, Transforms, Routing, Integration
26
Software
SWG will continue to invest in enabling event-driven applications on its current platform as well as make investments in real-time middleware
RT
Mid
dlew
are
Real-time stackOptimized for time-dependent
predictable sub-second response
Current stackOptimized for high throughput
Realtime ESBRealtime messaging
Composition
Realtime Application Hosting
Realtime solutions, patterns
Realtime operating systemLinux with extensions
Realtime Java Metronome
Programming model
ESB and DataPower messaging
Programming model
Application Hosting
solutions, patterns
operating system
JVM
Composition
Incr
easi
ng re
spon
se ti
me
Dec
reas
ing
pred
icta
bilit
y
Supported In Developmentand Pilot
Partialsupport
27
Software
Example: Telecom
Focused on infrastructure for telecom services Not billing, operations, etc – those are traditional IBM strengths Instead, think call handling, media delivery, online services
Industry is moving quickly to IP-based networks Voice over IP the most prominent example but also text, data, audio, video,
and online services such as conferencing or presence Also convergence of fixed and mobile services
Divided into service, control and transport planes Each with their own speed and reliability characteristics IBM focused on middleware and services for the “service” or application
hosting plane – key pain point today is inadequately low and predictable latency
Converged J2EE/SIP container for services plane Based on JSR 116 SIP servlets Targeting 20ms latency per SIP message (8-16 messages for a call setup) Targeting 100ms latency for failover detection Hoping to use off the shelf hardware and OS
28
Software
RTJ Garbage Collection Benefits for WAS SIP
Existing Java garbage collection (GC) stops all processing activity
SIP messages use an unreliable transport Long GC activity will cause SIP
messages to be dropped Even with large message queue buffers
Message retransmission adds additional load to heavily burdened server Positive feedback results in network
storm
Metronome garbage collection amortizes the GC cost Tunable, periodic garbage collection Many, small GC activities
Messages are queued during GC activity No loss
WAS SIP
Input Rate
t=0
t=0
t=0
Processed Data
GarbageCollection
WAS SIP
Input Rate
t=0
t=0
t=0
Processed Data
GarbageCollection
Existing Garbage Collection With RTJ Garbage Collection
29
Software
Detailed Naval Scenario DescriptionThis scenario represents a sequence of events necessary for a Naval ship to defend its self against a missile threat. This ship has 10 seconds to react and destroy the missile, in that time our Real-Time Event Driven Architecture must assess, correlate, transform, enrich and route a multitude of complex event streams across three time epochs from sensors to command and control (C2) and finally weapons across its associated Real-time Enterprise Service Bus (ESB).
1000m = .5 NM 6000m = 3 NM
SPD : 820 mph = 1203 ft/sec
T0T0 + 10 sec
Impact point
Normal Ops
t0
Detection Correlation Classification Tracking Validation Assess Confirm Task Execute
T0 + 1 T0 + 2 T0 + 3 T0 + 4 DestroyT0 + 5 T0 + 8 T0 + 9T0 + 7T0 + 6
SENSORS COMMAND & CONTROL(C2)
WEAPONS
SPD : 1000 mph = 1467 ft/secss ms
µs
RT- ESBRT EDA-SOA
C2ECM
PhasedArray
RADARMissile
LauncherSilkworm
RAM
30 SOA on your terms and our expertise
WebSphere Service Registry and Repository
Topics –
Radically Simplifying Middleware
SOA and Web 2.0
XD Business/Object Grid
Real-time and Event-Driven SOA
SOA Registry and Governance
31
Software
WebSphere Service Registry & Repository Solution View
Service Development
Lifecycle WebSphere Service Registry and Repository
Service Endpoint Registries /
Repositories
Change and Release
Management
Operational Efficiency and
Resilience
Runtime Integration
FINDPUBLISH
GOVERNNOTIFY
Model Build
Assemble
Deploy
Mediate Bind
Manage
AGILITY
Discover
MANAGE
DISCOVER
Test
32
Software
WSRR – Development Support: Publish and Find
Find
Publish and find services
Publish and find services capabilities
Publish and find service lifecycle stage
Publish and find service interactions
Publish and find service dependencies and redundancies
DiscoverSearch
Retrieve
PublishDescribePopulateConfigureClassify
Organize
33
Software
Service Registry & Repository
Development Tool
WSRR - Publish and Find Interactions
Assembly/AdminTool
Search14 Validation
1. Search is performed for a service or mediation or policy to (re)use2. Development tools are used to create a new service metadata artifact3. The new service metadata artifact is published to the Service Registry & Repository4. Validation and conformance policies are enforced.5. Search is performed for a service or mediation or policy to use and one is selected for use6. The service is configured/wired and policy relationships are established.7. The assembled service is (re) published using the Service Explorer during deployment.
Assemble6Publish 7
Search/select5
WSDLXSD….
Create2
Publish3
34
Software
WSRR – Enable Runtime Support
AgilityIdentifyNotify
SecureAccessRuntime
Manage dynamic and efficient access to services information by runtimes
Identify users of metadata
Notify users of changes
Manage end user access to the repository based on roles
Securely transmit service information
35
Software
WSRR Runtime selection and invocation interactions
Dynamic selectionDynamic selection
Mediation
ESB
Service
Service Registry Service Registry & Repository& Repository
Retrieve requester service definition3
Match requester/ provider terms
Select provider
5
1. A Message is received by an ESB.2. The ESB invokes a selection mediation.3. The Mediation retrieves the service description for the requested operation from the Business
Service Repository. 4. The Mediation retrieves service descriptions for candidate providers5. The Mediation executes its matching algorithm to identify the provider service that is the best fit6. The inbound message is transformed and routed to the selected endpoint.
Retrieve candidate provider service definitionsand terms
4
1
Message
2
Message
Transform & Route6
Message
36
Software
WSRR – Management Support – Manage & Monitor
ManagePoliciesChangeVersionClassifyAnalyzePromote
Classify services into meaningful groupings based on business objectives
Manage service interactions, dependencies, relationships and redundancies
Manage policies for service usage and governance
Manage additional service metadata information Business metrics collected Summarized associated business metrics
Analyze services usage, history and business impact
Promote and encourage optimal services usage
37
Software
WSRR - Operational Monitoring Interactions
ESB
Service
Intermediary monitor
Operational DataOperational Data
Service Registry Repository
1. During service invocation a message is received by the ESB2. The ESB routes the message to an intermediate logging mediation or agent3. The monitor / mediation retrieves the monitoring policy for the message from the WSRR4. The monitor / mediation records the operational data about the running service5. The ESB then continues with the invocation of the service.n. Asynchronously, performance and health alerts are generated based on operational data; desired
summary alerts are recorded in the Service Registry and Repository
Get servicemonitoring metadata
3
Record data
4
Record desired alerts
n
message
Message Received1
Invoke5
message
message
message
Invoke logging mediation
2
38
Software
WSRR – Governance Support – Change Management
Infrastructure to help organize and discover services assets, govern access and monitor service vitality
Policies for publishing, using and retiring services
Change management
Manage change and versioning of services
GovernApproveRetire
ValidateConform
39
Software
WebSphere Service Registry & Repository Roadmap
Whitepapers and Collateral to socialize WebSphere Service Registry & Repository
Assets Q4 2005
Tech PreviewQ1 2006
Early Access with Technology Preview Meta model and APIs published to enable
exploitation Basic UI
General Availability2H 2006
GA Offering Tooling and Utilities supporting
• Metamodel, Lifecycle, Policy
Major ReleaseIncremental Code Drops / Previews
Early AccessQ2 2006
All plans and proposed timelines subject to change
The Approach: Incremental development process
• Field-based development model and Iterative code availability
Linkage across SWG for key components and integration
• Key technologies from Information Management and Rational
• First class consumption and exploitation across the SOA Foundation
40 SOA on your terms and our expertise
WebSphere Service Registry and Repository
THANKS – QUESTIONS ???
Radically Simplifying Middleware
SOA and Web 2.0
XD Business/Object Grid
Real-time and Event-Driven SOA
SOA Registry and Governance