Infinispan Tutorials

Step-by-step guides to learn Infinispan features

10 min

Semantic Search with LangChain4j and Infinispan

Use Infinispan as a vector database for AI semantic search with LangChain4j embeddings

getting started
10 min

Vector Search with Infinispan

Perform kNN vector search and hybrid queries combining vector similarity with full-text and metadata filters

vector search knn
10 min

Cache Aliases with Embedded Infinispan

Create and update cache aliases so that a single cache is accessible under multiple names

caching aliases
10 min

Distributed Cache with Embedded Infinispan

Create a distributed cache across a cluster of embedded Infinispan nodes using DIST_SYNC mode

caching clustering
10 min

Invalidation Mode with Embedded Infinispan

Use invalidation mode in a clustered environment where nodes maintain local data and invalidate stale entries across the cluster

caching invalidation
10 min

Replicated Cache with Embedded Infinispan

Create a replicated synchronous cache where all data is stored on every node in the cluster

caching clustering
10 min

Cluster Executor with Embedded Infinispan

Execute tasks across all nodes in an Infinispan cluster using ClusterExecutor

clustering execution
15 min

Clustered Counters with Embedded Infinispan

Use strong bounded, strong unbounded, and weak counters in an embedded Infinispan cluster

clustering counters
10 min

Functional Map API with Embedded Infinispan

Use the functional map API for write-only, read-only, and read-write operations on cache entries

caching functional
5 min

JCache (JSR-107) with Embedded Infinispan

Use the standard JCache API (JSR-107) with Infinispan as the caching provider

caching standards
15 min

Kubernetes Discovery with Embedded Infinispan

Configure embedded Infinispan to discover cluster members using Kubernetes DNS_PING

clustering kubernetes
10 min

Cache Listeners with Embedded Infinispan

Register listeners to receive notifications when cache entries are created or modified

caching events
10 min

Clustered Locks with Embedded Infinispan

Use clustered locks for distributed synchronization across embedded Infinispan nodes

clustering locking
5 min

Local Cache Map with Embedded Infinispan

Use an embedded Infinispan cache as a local key-value map with basic put and get operations

caching getting started
10 min

Prometheus Metrics and JMX with Embedded Infinispan

Enable Prometheus metrics scraping and JMX statistics on an embedded Infinispan cache

monitoring metrics
5 min

Multimap Cache with Embedded Infinispan

Store multiple values per key using the embedded multimap cache with an asynchronous API

caching multimap
10 min

Ickle Queries with Embedded Infinispan

Run Ickle queries against indexed entities stored in an embedded Infinispan cache

querying indexing
10 min

Programmatic Index Configuration with Embedded Infinispan

Define index mappings programmatically instead of using annotations for embedded Infinispan queries

querying indexing
10 min

Authorization and Security with Embedded Infinispan

Configure role-based authorization to control access to embedded Infinispan caches

security authorization
5 min

Java Streams with Embedded Infinispan

Use the Java Streams API to perform map-reduce operations on embedded Infinispan cache data

streams processing
10 min

Transactions with Embedded Infinispan

Use JTA transactions to perform atomic commit and rollback operations on an embedded Infinispan cache

transactions caching
10 min

Hibernate L2 Cache with Infinispan (Standalone)

Use Infinispan as the Hibernate second-level cache provider in a standalone Java application

hibernate caching
10 min

Hibernate L2 Cache with Spring Boot

Use Infinispan as the Hibernate second-level cache provider in a Spring Boot application

hibernate spring boot
15 min

Hibernate L2 Cache with WildFly

Use Infinispan as the Hibernate second-level cache provider in a WildFly JAX-RS application

hibernate wildfly
10 min

Quarkus Infinispan Client

Build a Quarkus REST resource that stores, retrieves, and full-text searches data in a remote Infinispan Server

quarkus remote
5 min

Spring Boot Embedded Caching

Use Spring Boot @Cacheable with an embedded Infinispan cache manager

spring boot caching
10 min

Spring Boot Remote Caching

Use Spring Boot with @Cacheable and @CacheEvict backed by a remote Infinispan Server

spring boot caching
10 min

Spring Boot Reactive Remote Caching

Use Spring Boot with reactive @Cacheable and Project Reactor backed by a remote Infinispan Server

spring boot reactive
10 min

Spring Boot HTTP Sessions with Embedded Infinispan

Store Spring Boot HTTP sessions in an embedded clustered Infinispan cache

spring boot session
10 min

Spring Boot HTTP Sessions with Remote Infinispan

Store Spring Boot HTTP sessions in a remote Infinispan Server for externalized session management

spring boot session
5 min

Spring @Cacheable with Embedded Infinispan

Use Infinispan as the Spring CacheManager with @Cacheable annotations

spring caching
10 min

C# Hot Rod Client: Getting Started

Connect to an Infinispan Server and perform basic cache operations with the C# Hot Rod client

caching getting started
10 min

C++ Hot Rod Client: Getting Started

Connect to an Infinispan Server and perform basic cache operations with the C++ Hot Rod client

caching getting started
10 min

Node.js Hot Rod Client: Getting Started

Connect to an Infinispan Server and perform basic cache operations with the Node.js Hot Rod client

caching getting started
10 min

Python REST Client: Getting Started

Connect to an Infinispan Server and perform basic cache operations with Python and the REST API

caching getting started
5 min

Remote Cache: Getting Started

Connect to an Infinispan Server and perform basic cache operations with the Hot Rod client

caching getting started
10 min

Remote Cache Administration

Create caches remotely using the Hot Rod client admin API with simple, template, and XML configurations

caching administration
5 min

Remote Cache Aliases

Add aliases to remote caches and access the same data through different cache names

caching administration
15 min

Continuous Queries

Receive real-time notifications when cached data matches a query using continuous query listeners

querying events
10 min

Remote Counters

Use strong counters (bounded and unbounded) and weak counters with the Hot Rod client

counters getting started
15 min

Cross-Site Replication

Set up active-passive cross-site replication between two Infinispan clusters (LON and NYC) and switch between them

caching cross site
10 min

Cache Encodings with DataFormat

Store and retrieve data using different cache encodings (text/plain, JSON, XML) with the DataFormat API

caching encoding
10 min

JUnit 5 Testing with Infinispan Server Extension

Write integration tests using the Infinispan Server JUnit 5 extension with Testcontainers

testing junit5
10 min

Using Infinispan with Kotlin

Connect to Infinispan Server and perform cache operations using Kotlin and the Hot Rod client

kotlin getting started
10 min

Client Listeners for Cache Events

Register client listeners to receive notifications when cache entries are created or modified

events listeners
5 min

Remote Multimap Cache

Store multiple values per key using the remote multimap cache API

caching multimap
10 min

Near-Cache with Bloom Filters

Speed up repeated reads by enabling near-caching with bloom filter optimization on the Hot Rod client

caching performance
10 min

OpenTelemetry Tracing

Enable OpenTelemetry tracing on an Infinispan cache and view traces in Jaeger

observability tracing
10 min

Per-Cache Configuration

Configure remote caches using templates, inline XML, and URI-based XML files

caching configuration
15 min

SQL Store Persistence

Persist cache data to a relational database using SQL table stores with Protobuf schemas

persistence sql store
10 min

Programmatic ProtoStream Marshalling

Build a Protobuf schema programmatically and register a custom marshaller without annotations

marshalling protostream
15 min

Querying Data with Ickle and Protobuf

Index and query cached data using Ickle queries, Protobuf schemas, and full-text search

querying getting started
10 min

Reactive API with Mutiny

Perform non-blocking cache operations using the Infinispan Mutiny reactive API

reactive mutiny
5 min

Accessing Infinispan with a Redis Client

Connect to Infinispan using the RESP protocol with the Jedis Redis client library

caching redis
10 min

Schema Administration

Create, update, retrieve, and remove Protobuf schemas programmatically using the Schema Admin API

schemas protobuf
10 min

Securing Caches with Role-Based Authorization

Configure role-based access control (RBAC) to restrict cache operations by user role

security
15 min

TLS with Client Certificate Authorization

Connect to Infinispan Server using TLS encryption and client certificate authentication with EXTERNAL SASL

security tls
15 min

Spatial Queries

Run geospatial queries on indexed caches using within circle, box, polygon, distance projection, and spatial ordering

querying spatial
10 min

Server-Side Tasks

Upload and execute server-side JavaScript tasks via the Hot Rod client and REST API

tasks server
10 min

Transactional Cache Operations

Perform transactional cache operations with commit and rollback using the Hot Rod client

transactions caching
30 min

The Client/Server Weather APP

Use Infinispan from the Web Console and remote Hot Rod clients to build a searchable weather monitoring system

caching getting started
View on GitHub
30 min

The Embedded Weather APP

Embed Infinispan in your application, progressing from a simple local cache to a fully-distributed compute grid

caching getting started

Quarkus Demo

Infinispan and Quarkus integration example application

integrations
View on GitHub

SQL Store Demo

Infinispan SQL store demo with Quarkus

persistence
View on GitHub

Eclipse Vert.x Demo

Infinispan and Vert.x integration example

integrations
View on GitHub

Spring-Boot Demo

Infinispan and Spring-Boot integration example

integrations
View on GitHub