WebLogic Time and Event Driven Product Family (TED) The

Download Report

Transcript WebLogic Time and Event Driven Product Family (TED) The

Complex Event Processing (CEP)
WebLogic Time and Event Driven
Product Family (TED)
The Java Runtime infrastructure and Container for Event Driven
Architecture based Applications
Wolfgang Weigend
Principal Systems Engineer
Team Lead Systems Engineering
Germany, Switzerland and Austria
Agenda
Product Markets and Drivers
Product Overview
What´s inside
Use Case
BEA Systems | 2
“The Instantly Responsive Enterprise”
• WebLogic TED
• EDA (Event Driven Architecture) facilitates the execution
of uncoupled business processes triggered by real-time
events
• Extends SOA (Service Oriented Architecture) with a
Sense/Respond paradigm
• Enabler for XTP (Extreme Transaction Processing)
BEA Systems | 3
“The Instantly Responsive Enterprise”
Triple play order management
Asset management
Algorithmic trading
Financial Services
• Large volumes
of streaming
events
Transportation
&
Logistics
Telecommunications &
• Need for sub-millisecond
response times
Services
•
•
Intrusion detection systems
Military asset allocation
Manufacturing
• Guaranteed under heavy loads
Insurance
Public Sector & Military
Reponses to calamities –
earthquake, flooding
BEA Systems | 4
‘Negative Working
Capital’ inventory
management
Unique Foundational Runtime Infrastructure
(WebLogic Real Time: Powered by JRockit )
Real Time Development Environment
Use Case -Extreme low latency and predictability
Event Processing Tooling
for Java applications – Time Critical
Applications
Average response times in microseconds
QoS Latency Monitoring
Guaranteed maximum response times
►
WebLogic Real Time Server
POJOs
Benefits
WLW Real Time IDE
Services
Spring
Real Time Infrastructure Services
Stream
Processing
Complex
Event
Processing
Real Time
Scheduling
Distributed
Caching
Common Services
Fault Tolerance
Deterministic QoS under heavy load
OA&M
Deterministic Java Runtime
DGC
Liquid VM
No code re-writes
“At first, we doubted BEA's performance claims for WLRT 1.1.
After all, if it were possible to lose the garbage-collection
latency, wouldn't Sun have done it already? After testing WLRT
1.1 in several scenarios, we concluded BEA's solution works.” . Network Computing, September 2006
BEA Systems | 5
Real Time
Synch
Unique Foundational Runtime Infrastructure
(WebLogic Real Time: Identify, Analyze and Resolve)
Visualize thread & transaction execution time lines
Find sources of latency spikes
BEA Systems | 6
Unique Java Container
(WebLogic Event Server: Exceeding EDA Expectations )
Real Time Development Environment
Event Processing Tooling
WebLogic Real Time Server
Use Case : Predictable, performant high volumes of
Benefits
Applications
POJOs
QoS Latency Monitoring
streaming data – Event Critical
WLW Real Time IDE
Real Time Infrastructure Services
Stream
Processing
Complex
Event
Processing
Real Time
Scheduling
Complex event processing
Handle high volumes of data (50k messages/sec)
Latency optimized, lightweight Java container
Light-weight Java deployment platform
 POJO support
• Enterprise “ilities” expected from an application server
 Scalability, Manageability, Availability, Security
BEA Systems | 7
Distributed
Caching
Common Services
Fault Tolerance
•
•
•
•
Services
Spring
OA&M
Deterministic Java Runtime
DGC
Liquid VM
Real Time
Synch
Unique Java Container
(WebLogic Event Server: Deterministic Container)
Infrastructure for deterministic
millisecond latencies under predetermined peak workloads
Minimize thread context switching and
synchronization
Tuned I/O (e.g., socket connections)
WLRT Event Server (Deterministic Container)
t1
Real-time scheduling
Adapter
datastream
Event
Processor
datafeeds
Efficient memory management
Adapter
datastream
Queries
WLRT (Deterministic runtime)
BEA Systems | 8
POJO
events
WebLogic Time and Event Driven
Complete Product Family
RT Development Environment
Event Processing Tooling
WLW Real Time IDE
WebLogic Event Server
Applications
QoS Latency Monitoring
POJOs
Services
Spring
Event Server Infrastructure Services
Stream Processing
Stream Management
Complex Event
Processing
Real Time
Kernel
Common Services
Configuration &
Administration
Security
Logging
Fault
Tolerance
Run Time
JRockit
BEA Systems | 9
WebLogic Realtime
Liquid JVM
• Tuned Light Weight Java
container
• Integrated CEP Engine
• Supports Business Logic
as POJO
• Low latency, deterministic
• Latency metrics uniquely
available
• First fully mSA-based
(consumer/producer) BEA
products
The integrated solution
provides a scalable,
extremely low latency,
Java platform for
developing & running Real
Time CEP applications.
Hardware and Software Platforms
BEA Systems | 10
What´s inside
Low Latency Deterministic Container
Lightweight “Application Server”
Event Driven Programming Model
Complex Event Processor (CEP)
Deployment Environment
Time and Event Driven Computing Summary
BEA Systems | 11
Low Latency Deterministic Container
WLRT Deterministic GC
Provides QoS guarantees
Usage: ”-Xgcprio:deterministic –Xpausetarget=10ms
Highly tuned mostly concurrent mark-n-sweep GC
Most work done concurrently, pauses are frequent but very short
Back off, split work and reschedule if nearing QoS limit (divide and
conquer)
One GC cycle (phases 0-2, 2-4, 4-5, 5 visible)
500 ms
20 s
BEA Systems | 12
Lightweight “Application Server”
Built on the BEA “Core Engine”
Equinox OSGi Platform underneath
Mix of hardened WLS subsystems and new technologies (SpringOSGi, Complex Event Processor, etc.)
Tuned I/O model
Refinements to WLS network I/O model
Blocking network I/O
One dedicated thread/connection
Tuned Threading model
Minimal (zero) thread switching
Can parallelize Rules execution or switch thread (if desired)
BEA Systems | 13
Event Driven Programming Model
Applications model complex event processing networks
Network of collaborating producers and consumers of events
Network nodes (stages) are:
Services: Adapter, Stream, Processor
Business Object: POJO (Spring Beans)
Events: POJO or Map
Spring-based declarative assembly and configuration
Applications configured in Spring configuration file
Custom Spring tags for WLEvS services
Dependency injection for additional services
Seamless integration to legacy Spring beans
BEA Systems | 14
Event Driven Programming Model
Data Source
Adapter
Stream
Processor
Stream
Data Source
BEA Systems | 15
Adapter
Stream
User
Code
Complex Event Processor (CEP)
Continuous query engine
Processes high volumes of streaming data
Filtering, Correlation, Causality, Aggregation
Evaluates in “Real-Time” (Sub-millisecond with high workloads)
SQL-based Event Processing Language (EPL)
Extensions to handle streaming Events
Runtime representation
Rules : compiled into Java code by Query Parser
Actions (user code): POJOs (Spring Beans)
Events: POJOs
BEA Systems | 16
Event Processing Language (EPL)
SQL-based
Leverage existing skill-sets
Easier integration to relational data
SELECT … FROM RETAIN … WHERE …
GROUP BY … HAVING …
MATCHING … OUTPUT …
Extensions to handle streaming data
WHEN ... THEN vs. IF ... THEN
Streaming Windows (sliding, jumping)
Time-based queries
BEA Systems | 17
Deployment Environment (1)
Connectivity Capabilities
HTTP(S) for client requests/response
JMS client for asynchronous message for client or data
source
Standard Java SE remote interfaces (i.e., RMI, JNI, JDBC)
Adapter SDK for writing custom adapters
Integrates with Event Sources and Sinks
Socket framework for TCP/IP based adapters
Easy mapping to Event Model
BEA Systems | 18
Deployment Environment (2)
Comprehensive Security Framework
Leverages best-of-breed BEA Common Security Services
Framework (“CSS”)
Pluggable SPI model (“Security Providers”) for 3rd party integration
SSO – via “AUTH Provider” for Cleartrust
File based security provider for configuring user, passwords,
and roles
Password information encrypted
API to retrieve user, password
Used by http server for user authentication
BEA Systems | 19
Deployment Environment (3)
Administration and Monitoring
Command line interface to start/stop server and application
deployment
Standard JMX interface for system configuration and
monitoring
Basic configuration status and monitoring Mbeans with
initial release
Tightly integrated with JR Mission Control
Latency Analyzer
BEA Systems | 20
Deployment Environment (4)
Administration and Monitoring - Dashboard Activity Monitoring
BEA Systems | 21
Time and Event Driven Computing Summary
BEA WebLogic TED Products
Application Frameworks
CEP, Stream, Scheduling Services
Foundation Event Services
WebLogic Real Time
Quality of Service Monitoring
BEA Workshop for TED
WebLogic Event Server
WebLogic Event
Server (WLEvS)
WLRT and
WLEvS ship
separately and
as a bundle
WLRT can be
“dropped in” to
other products
as turbocharger
JRockit DGC
Aggregate, correlate, filter data
10,000 Rules / Queries
Incoming Data Streams
150,000 Messages/Sec
<1K message size
BEA Systems | 22
Latency Goals
< 1 Millisecond Latency (Avg.)
BEA Confidential
22
30 Millisecond Latency (Max)
Resulting Data fed to user Java code
<5% data matches filter criteria
Use Case: Financial Services Partner
Fixed Income Trader - Pricing Engine
Opportunity
Solution Powered by BEA
Response time (ms)
Improve performance and stability of fixed
income pricing engine
Response times (DC1)
140
130
120
110
100
90
80
70
60
50
40
30
20
10
0
0
200
400
600
800
1000
1200
1400
Time (s)
WLRT CE
Sun
Sun Java
JRockit
Reduces Application Pause times (jitter)
• Response time improved by 50% using
BEA WebLogic Realtime
60
• Sun JVM avg: 16 ms, WLRT: 7.5 ms
50
• Dependability improvement of 20% using
BEA Weblogic Realtime
response time (ms)
Predictable Java runtime Performance
Re sponse time s unde r fixe d load
40
WLRT
CE
JRockit
Det GC
Tuned Sun VM
Java
30
20
10
0
99.9 pctl
BEA Systems | 23
99 pctl
95 pctl
80 pctl
m edian
average
BEA’s Event-driven SOA Suite – Proof Points
- A Financial Services Equities Group
Value Proposition
Significantly Increased Throughput
BEFORE -- 10,000 - 20,000 concurrent signal instances
AFTER – 50,000 concurrent signal instances
Higher developer productivity and flexibility
By using EPL
Dynamic rules update through configuration
Data sources:
• Streaming market
data
• JDBC data
sources (MS SQL
Server
• Order flow data
from traders
BEA Systems | 24
Data
Feeds
Adapter
connectivity
Data Feeds
Process
Events
User Code
(Plain Java)
Output: Situations of
interest to clients
•
Stock price moves
by 3%
•
Spread exceeds X
•
consecutive ticks
in a certain
direction
Event Driven SOA (EDSOA)
In Use Case, Architecture and product
SOA Services
WLS
createOrder()
Interactive Response
Service Bus
SOA Clients
ALSB
WLRT
Automated Response
ALBPM/WLI
Event Server
CEP
Real-time alerts
WLRT
External Events
Legend
SOA Message
SOA Event
External Event
BEA Systems | 25
ALDSP
Vielen Dank für Ihre
Aufmerksamkeit!