==  Introduction
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.

=== Runtimes
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) 
*  inside an OSGi runtime environment (such as Apache Karaf)

=== Modes
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.

=== Interacting with Infinispan
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 wire protocols are supported) 

This guide will introduce to each of the runtime options, access patterns and modes of operations by walking you through simple applications for each.

