This guide will walk you through downloading, installing and running Infinispan for the first time. It will then introduce to some of the key features of Infinispan.
Infinispan can be used in a variety of runtimes:
- Java SE, started by your application
- an application server which provides Infinispan as a service (such as JBoss AS)
- bundled as a library in your application, deployed to an application server, and started on by your application (for example, you could use Infinispan with Tomcat or GlassFish)
Infinispan offers four modes of operation, which determine how and where the data is stored:
- Local, where entries are stored on the local node only, regardless of whether a cluster has formed. In this mode Infinispan is typically operating as a local cache
- Invalidation, where all entries are stored into a cache store (such as a database) only, and invalidated from all nodes. When a node needs the entry it will load it from a cache store. In this mode Infinispan is operating as a distributed cache, backed by a canonical data store such as a database
- Replication, where all entries are replicated to all nodes. In this mode Infinispan is typically operating as a data grid or a temporary data store, but doesn't offer an increased heap space
- Distribution, where entries are distributed to a subset of the nodes only. In this mode Infinispan is typically operating as a data grid providing an increased heap space
Invalidation, Replication and Distribution can all use synchronous or asynchronous communication.
Infinispan offers two access patterns, both of which are available in any runtime:
- Embedded into your application code
- As a Remote server accessed by a client (REST, memcached or Hot Rod)
This guide will introduce to each of the runtime options, access patterns and modes of operations by walking you through simple applications for each. All these applications are available in the Infinispan Quickstart distribution.