Survey
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
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!