Chapter 10. More Than Just a Cache
Session State Cache
Web and mobile apps maintain the illusion of a user session even though they are connected over a sessionless communication protocol. This is achieved by caching the session state in a data layer separate from the app servers so that the load balancer is free to move load to any app server; it will still have access to the session state at all times.
Compute Grid
There are many use cases for which moving the compute to the data instead of moving the data to the compute can cause tremendous performance improvements. An example of such a use case is a financial risk-management system. In one benchmark of a position-keeping system calculating positions on 20 books of 10,000 European options, starting with five million trades per book, with 20,000 market data updates per second and 2,000 new trades per second, the mean time to “price the book” went down from 2.67 seconds using a separate data grid and compute grid to 0.035 seconds when the compute was done in situ with the data. That is an improvement in performance of 76 times, with half as much hardware just by moving the compute to the data. The key to this kind of performance gain is the use of GemFire’s server-side data-aware function execution service. There are two ways that this service works. In both cases you program your custom function to act only on data that is local to the member that it is running on, and you deploy it to the servers in the cluster. ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access