<Insert Picture Here>
Oracle Coherence Training Overview and Architecture <Name> <Title>
Overview • Overview • What is Coherence? • How does it work? • Installation • Installing and Testing Coherence • Getting Started • Code Examples • Object Modelling • Integration • In-Grid Processing • Management, Monitoring and Sizing Copyright © 2011. Oracle Corporation
What is Coherence
Copyright Š 2011. Oracle Corporation
Oracle Coherence • Development Library • Pure Java 1.4.2+ • Pure .Net 1.1+ (client) • Pure C++ (client) for Windows, Solaris and Linux • No Third-Party Dependencies • No Open Source Dependencies • Proprietary Network Stack (Peer-To-Peer model) • Other Libraries Support9 • Database and File System Integration • Top Link and Hibernate • Http Session Management • Spring, Groovy Copyright © 2011. Oracle Corporation
Oracle Coherence • Provides9 • Container-less Clustering of Java Processes • Data Structures to manage Data (XML-free) across a Cluster • Real-Time Event Observation – Listener Pattern • Materialized Views of Data – Invariant views (no-polling) • Parallel Queries and Aggregation – Object-based Queries • Parallel Processing – Data and Processing Affinity • RemoteException Free Distributed Computing Services • Clustered JMX • MAN + WAN Data and Processing Services • Client + Data Grid Deployment Models • Point-To-Point Communication Layer Copyright © 2011. Oracle Corporation
Oracle Coherence • Uses9 • Caching Objects in the Application Tier • Relieve load on lower-tier systems • Databases, Mainframes, Web Servers, Web Services
• Managing Object state in the Application Tier • Http Session Management (scale out) • Temporary System of Record for Extreme Transaction Processing
Copyright © 2011. Oracle Corporation
How Coherence
Copyright Š 2011. Oracle Corporation
Distributed Data Management (access) The Partitioned Topology (one of many) In-Process Data Management
Copyright Š 2011. Oracle Corporation
Distributed Data Management (update)
Copyright Š 2011. Oracle Corporation
Distributed Data Management (failover)
Copyright Š 2011. Oracle Corporation
Distributed Data Management • Members have logical access to all Entries • At most 2 network operations for Access • At most 4 network operations for Update • Regardless of Cluster Size • Deterministic access and update behaviour (performance can be improved with local caching) • Predictable Scalability • Cache Capacity Increases with Cluster Size • Coherence Load-Balances Partitions across Cluster • Point-to-Point Communication (peer to peer) • No multicast required (sometimes not allowed) Copyright © 2011. Oracle Corporation
Data Distribution: Clients and Servers “Clients” with storage disabled
“Servers” with storage enabled
Copyright © 2011. Oracle Corporation
Near Caching (L1 + L2) Topology
Copyright Š 2011. Oracle Corporation
Observing Data Changes
Copyright Š 2011. Oracle Corporation
Parallel Queries
Copyright Š 2011. Oracle Corporation
Parallel Processing and Aggregation
Copyright Š 2011. Oracle Corporation
Data Source Integration (read-through)
Copyright Š 2011. Oracle Corporation
Data Source Integration (writethrough)
Copyright Š 2011. Oracle Corporation
Data Source Integration (write-behind)
Copyright Š 2011. Oracle Corporation
Configuration • Cache configuration file – client and server • Override file – version, logging, WKA, Security etc. • Command line parameters, macros and properties • POF user types configuration file • .NET configuration via App.config, C++ via
tangosol.coherence.cacheconfig and environment variables Client
Coherence (coherence.xml)
Tangosol Client Override
Application (App.config)
Server
Configuration File
Tangosol Server Override Server POF
Configuration File
Configuration File
Configuration File
Configuration File
Client POF Configuration File
Copyright © 2011. Oracle Corporation
Server Cache Client Cache Configuration File
Configuration File
Cache Semantics • Client objects are copies not references to objects • Although a cache can contain any object they are
almost always of the same type • Links between objects in different caches are made using key’s • Cache nodes can be storage enabled or disabled • Cache member communications are peer-to-peer
Copyright © 2011. Oracle Corporation
Coherence Editions • Coherence*Web • Standard Edition • Partitioned Caching • Read-through/write-through support • Enterprise Edition • JMX Support • HTTP Session Caching • Write-behind • Parallel operations, like queries and aggregations • Grid Edition • WAN Replication • Multi-platform Real-time events (used by Continuous Query and Near Cache)
Copyright © 2011. Oracle Corporation
HTTP Session Caching Overview • No code changes required to use • Portlet state can be cached • Built into WLS and WLP How it works • Built-in to WebLogic Server • Use script to inject into WAR/EAR file • For IIS add as Benefits • Enables stateless middle tier • Better hardware utilization • Simpler network infrastructure • Scales out middle tier
Copyright © 2011. Oracle Corporation