Features

Infinispan is designed with ease of use and performance in mind but also gives you enterprise-grade capabilities for a wide range of use cases.

Flexible Deployment Models

  • Run as a library inside your applications.
  • Deploy as a server with high-performance remote access.

Designed for the Cloud

  • Lightweight, cloud-native design for microservice architectures.
  • Kubernetes Operator that provides operational intelligence.
  • Container image that you can run anywhere: OpenShift, AWS EC2, Azure, GCP.

Configurable data storage

  • Configure cache modes to distribute and replicate data as needed.
  • Encode key/value entries with different storage formats.
  • Store data in the JVM heap or native “off-heap” memory.

Clusterable and Elastic

  • Automatically form clusters with configurable discovery mechanisms.
  • Tune consistent hashing to control the nodes where data is located.
  • Create global clusters that span multiple data centers.

Secure

  • Control access to data based on user roles and permissions.
  • Define server security realms that protect you from intrusion and attack.
  • Encrypt inter-cluster traffic and remote endpoints.

Administration and Monitoring

  • Infinispan Console gives you intuitive administration and monitoring capabilities.
  • Infinispan CLI provides simple, yet powerful, tooling for administration tasks
  • Get statistics and MicroProfile compatible metrics for observability over time.

Developer Tooling

  • Quarkus extensions.
  • APIs for programmatic usage and extensibility.
  • Integration with Hibernate ORM, Spring Boot, JCache, and Wildfly.

HotRod Remote Protocol

  • Language-independent, binary protocol for high-performance remote access to data.
  • Client intelligence dynamically responds to cluster topology changes and requests data from primary owners.
  • Implementations available in Java, C++, C#, and Python.

Expiration and Eviction

  • Clean the data container and control memory usage.
  • Create mortal entries with time limits for remaining in memory.
  • Limit size of the data container based on the number of entries or amount of memory.

Persistent Cache Stores

  • Store data both in memory and durable persistent locations.
  • Cache stores available for File, RocksDB, JDBC, and more out of the box.
  • Use write-through caching to eliminate expensive data requests for applications.

ACID Transactions

  • Ensure data integrity with distributed transactions.
  • Configure transactions with optimistic or pessimistic locking, synchronization, and different isolation levels.
  • XA transactions with full recovery available.

Search

  • Ickle query language allows relational and full-text search with straightforward syntax.
  • Create indexes of your data to improve search performance.

Event Listeners

  • Deploy local or clustered listeners to detect events.
  • Get notifications when changes occur to the data store or Infinispan clusters.

Code execution

  • Run code across clusters to process data efficiently.
  • Create server-side scripts and tasks.