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.
Testimonials
Lots of exercises, which were good and which were well-administered.
Joseph Richardson
Nice Linux based training environment, a lot of examples and good web based documentation.
Roberto Campesato - CERN (The European Organization for Nuclear Research
I really enjoyed the good atmosphere.
Martin Jesterschawek
I liked the interactive approach, keeps the training interesting.
Elaine McCarthy
Very well delivered.
Damien Reid
Interactive trainer, helpful and had lots of suggestions for participants.
Liam Donovan
It was nice to see some other editors, other details around bpmn.
Derek Doherty
I really was benefit from the exercises in Eclipse.
Anna Beluskova
I generally enjoyed the exercises.
Merin Tony
The exercises were great and the material is short and concise.
Anjali Sharma
It met our expectations.
Vadim Bilan
Maintaining speed with taking every one in the group along. Exercise oriented. Tried to cover as much as possible comfortably.
Rakesh Prajapati
I was benefit from the flexibility and thorough explanations regarding the usage.
Denis Kirchhübel
I liked the positive and optimistic attitude. Gives good answers to questions.
Emil Krabbe Nielsen
Examples, practical use, answers to questions
Rafal
connection of theory with exercises
Mariusz Hanke
contact, knowledge of examples
Leszek Lickiewicz
driving method
Orange Szkolenia Sp. z o. o.
The instructor was EXTREMELY knowledgeable and had very good interaction with the class. I'm glad he was able to see our screens and give us help when needed.
- Sandia National Labs
Exercises and solving problems in groups when the problems were more difficult.
Randy Comer Comer - Sandia National Labs
I loved that he was able to see our machines to help us when we got stuck.
Megan Burns - Sandia National Labs
Filip was kind and patient and was generally responsive about questions and help.
- Sandia National Labs
Various aspects of the Rules engine world, the teacher was helpful and presented in a very structured way.
- Combined Computer Services C.C.S. B.V.
I mostly liked the exercises.
- Combined Computer Services C.C.S. B.V.
I generally liked the excercises.
- Combined Computer Services C.C.S. B.V.
He was very clear.
- Combined Computer Services C.C.S. B.V.
The provided wiki (extensive and clear), pace of training and natural way of presenting by Filip.
- Combined Computer Services C.C.S. B.V.
Related Courses
HTTP Web Server (Nginx, Apache, JBoss)
28 hours
Business Rule Management (BRMS) with Drools
7 hoursThis course is aimed at enterprise architects, business and system analysts and managers who want to apply business rules to their solution. With Drools, you can write your business rules using almost natural language, therefore reducing the gap
Introduction to Drools 6 for Developers
21 hoursThis 3 days course is aimed to introduce Drools 6 to developers. This course doesn't cover drools integration, performance or any other complex topics.
Drools 7 and DSL for Business Analysts
21 hoursThis 3 days course is aimed to introduce Drools 7 to Business Analysts responsible for writing tests and rules. This course focuses on creating pure logic. Analysts after this course can writing tests and logic which then can be further
Introduction to Drools 7 for Developers
21 hoursThis 3 days course is aimed to introduce Drools 7 to developers.This course doesn't cover drools integration, performance or any other complex topics.
Drools 6 and DSL for Business Analysts
21 hoursThis 3 days course is aimed to introduce Drools 6 to Business Analysts responsible for writing tests and rules. This course focuses on creating pure logic. Analysts after this course can writing tests and logic which then can be further
Drools Rules Administration
21 hoursThis course has been prepared for people who are involved in administering corporate knowledge assets (rules, process) like system administrators, system integrators, application server administrators, etc... We are using the newest stable community
Enterprise Java Programming with Java EE and JBoss (EJB 3.0)
28 hoursThis 4-day course is for programmers who already know the Java language and wish to exploit the Enterprise Java Beans 2.0 technology while becoming aware of the security implications of distributing applications. This course has a large practical
Undertow: Embed a Web Server into Your Application
7 hoursUndertow is a lightweight web server written in Java. It is used by JBoss's WilfFly internally and is popular as an embedded web server for JVM-based applications. In this course, participants will learn how to set up an Undertow web server
WildFly Server Administration
14 hoursThis course is created for Administrators, Developers or anyone who is interested in managing WildFly Application Server (AKA JBoss Application Server). This course usually runs on the newest version of the Application Server, but it can be