Course Outline

Module 1. Introducing the Infinispan data grid

  • Infinispan and JSR 107 – Java Temporary Caching API
  • Getting started with Infinispan
  • Installing Infinispan
  • Looking inside the box
  • Using Maven
  • Creating your first project
  • Setting up the environment

Module 2: Infinispan architecture 

  • Anatomy of an Infinispan clustered cache 
  • The embedded (P2P) mode 
  • The client/server mode 
  • The cache container
  • Default cache
  • Naming your caches 

Module 3: Understanding Infinispan Topologies

  • Clustering modes 
  • The local mode 
  • The invalidation mode 
  • The replicated mode 
  • Understanding synchronous and asynchronous replication 
  • The distribution mode 
  • Server Hinting 
  • L1 caching 

Module 4. Configuring an Infinispan cache 

  • Declarative configuration on Infinispan
  • Understanding the JGroups element
  • Configuring the threads subsystem
  • Configuring the cache-container element
  • Programmatic configuration 
  • Infinispan APIs 
  • Learning the cache API
  • Understanding cache evictions
  • Configuring cache expiration
  • Eviction v/s Expiration

Module 5. Persisting data in Infinispan

  • Configuring a cache loader
  • Filesystem-based cache loaders
  • JDBC-based cache loaders
  • JPA cache store
  • Selecting a JDBC cache loader
  • Using passivation in your application

Module 6. The role of Marshalling

  • Support for Non-Serializable Objects
  • Advanced configuration
  • Plugging Infinispan with User defined Externalizers

Module 7. Querying and indexes

  • The infinispan-query module
  • Configuration
  • Cache modes and managing indexes
  • Sharing the index
  • Clustering the index in Infinispan
  • Rebuilding the index
  • Obtaining query statistics
  • Infinispan's Query DSL
  • Filtering operators
  • Boolean conditions
  • Nested conditions
  • Projections
  • Sorting
  • Pagination
  • Grouping and Aggregation

Module 8. Using HotRod Client

  • Introduction
  • Installation and configuration
  • Using the API

Module 9. Use of Streams API

  • Common stream operations
  • Local/Invalidation
  • Distribution/Replication
  • Rehash aware
  • Serialization
  • Parallel Computation
  • Task Timeout
  • Injection
  • Distributed Stream Execution
  • Key based rehash aware operators
  • Intermediate operation exceptions

Module 10: Understanding Transactions and Concurrency 

  • Transaction fundamentals 
  • Java Transaction API 
  • Transactional modes 
  • Non-transactional data access 
  • Transactional models 
  • Optimistic transaction 
  • Pessimistic transaction 
  • Choosing the better transaction model 
  • Batch mode 
  • Transaction recovery 
  • Integrating with Transaction Manager 
  • Locking and concurrency control 
  • Multiversion concurrency control 
  • Configuring isolation levels in Infinispan 
  • Implicit and explicit locking 
  • Lock timeouts 
  • Deadlock detection 
  • Data versioning 

Module 11. Introducing Hibernate OGM 

  • Hibernate OGM features 
  • Hibernate OGM architecture 
  • Understanding how the mappings work 
  • Installing and using Hibernate OGM 
  • Creating a Hibernate OGM project using Maven 
  • Configuring the persistence unit 
  • Configuring Infinispan caches for Hibernate OGM 
  • Creating the domain model 

Module 12. Understanding Cross site replication

  • Sample deployment
  • Data replication
  • Taking a site offline
  • State transfer between sites

Module 13. Looking to version 9

  • The news with version 9
  • Understanding the major changes
  • Upgrading path from 8.x to 9

Requirements

There are no specific requirements needed to attend this course.

  28 Hours
 

Testimonials (5)

Related Courses

Related Categories