is a distributed computing model that allows applications to be built and deployed across multiple nodes in a network. The nodes communicate using a shared memory space.
- Distributed computing model
- Applications deployed across multiple nodes
- The nodes communicate using a shared space
- It is composed of five components:
- Processing unit – the application logic and in-memory data grid
- Virtualized middleware – to coordinate the processing units
- Virtualized middleware – message, data, and processing grids. Deployment manager.
- Data pumps – send the data to a database (asynchronously) using Data Readers and Writers
- Pros: high scalability, high concurrency, elasticity
- Cons: – cost, testability, simplicity, deployability, modularity, fault tolerance
- Products: Hazelcast, Apache Ignite, Oracle Coherence, HAProxy, Nginx