Caching architecture
Caching is a key enabler for low-latency contextual data access
Last updated
Caching is a key enabler for low-latency contextual data access
Last updated
The Joule architecture integrates a client cache into the process, allowing real-time data access from a distributed managed caching service.
This solution is generally only needed whenever a processes need to be triggered intra-day whenever key data changes at source. This is a common pattern with larger enterprise solution architectures and is also becoming more applicable to scale-ups.
The reference architecture solution is built using Apache Geode although solutions such as Redis and Hazelcast are good candidates too and would be considered in the future.
Apache Geode is a recognised enterprise grade caching solution battle tested across multiple industries often in highly complex environments.
Over 20+ years the product has been deployed within healthcare, financial services, telco and many other industries and thus has many architecture deployment patterns.
Its key value proposition is providing a low latency and high throughput data to client services using a multi-region distributed cluster solution, along with vertical scaling techniques. Geode implement CAP theorem proving the user to decide upon which two CAP guarantees to follow.
The Joule implementation provides the eventing callbacks to bind the backing database to the distributed cache cluster using Geode's cache listener APIs. Any changes with the cluster are reflected with the embedded Joule client cache. And thus the client cache always has an updated image of the data stored locally.
Set up the Apache Geode cluster, see Geode documentation.
Configure client cache connection, see Contextual data for more information on setup.
Bind to the store within the enricher processor by using its logical mapping name. The enricher using
assignment binds to the underlying store.