Course Overview
This 4-day course teaches students how to successfully develop applications using GemFire. The course will focus on a number of key developer patterns and how to implement them using the GemFire Java API, as well as using Spring Data GemFire.
Course Objectives
By the end of the course, you should be able to meet the following objectives:
• Set up a GemFire cluster as a developer environment
• Configure replicated and partitioned regions
• Create clients to perform basic CRUD operations
• Perform queries to fetch data
• Design and implement custom partition solutions to support operations requiring co-located data
• Implement caching patterns, such as Read-thru, Data validation and Write-behind
• Implement client-side event handling
• Enable PDX data serialization
• Implement transactional operations
• Write, register and invoke functions
• Utilize Spring Data Gemfire to simplify client application development
• Manage memory in GemFire using expiration and eviction
Pre-Requisite
Basic understanding of application development using Java IDE (Eclipse or STS preferred); STS is used in the course
Who Should Attend
Application developers seeking to master GemFire application development
Related Certification Exam
Course Modules
1. Introduction to GemFire
• GemFire as an IMDG
• GemFire Topologies
• GemFire common use-cases
2. Client/Server Cotinfiguraon
• GemFire Distributed Systems
• Configuring the Distributed System
• Working with the GemFIre Shell (GFSH)
3. Creating Regions
• Data storage and Region overview
• Partitioned regions
• Partitioned region recovery
• Replicated regions
• Data modeling
4. Creating a Client Application
• Client cache and connection pools
• Client region types
• Putting everything together
• CRUD operations
5. Querying for Data
• Query service and OQL Overview
• OQL detail
• OQL and Object modeling
• Advanced query topics
• Using indices
6. Custom Partitioning
• Why custom partitioning?
• Co-location of partitioned regions
• Writing a custom PartitionResolver
7. Server Events
• GemFire Event Framework
• Implementing Read-thru using a Cache Loader
• Implementing data validation using Cache Writer
• Auditing with Cache Listener
8. Implementing Write-behind Caching
• Implementing an AsyncEventListener
•Utilizing logging
9. Client Events
• GemFire Client Events
• Registering Interest
• Implementing a CacheListener
• Continuous Queries
10. Data Serialization
• Java serialization overview
• Using GemFire Serialization APIS
• Implementing PDX serialization
• Using PdxInstance
11. Transaction Management
• GemFire transaction overview
• Transactions on a partitioned region
• Transactions on a replication region
• Client transactions
• Transaction event handling
12. Writing and Registering Functions
• Function Service overview
• Implementing functions
• Registering functions
• Function execution overview
13. Executing Functions
• Functions review
• Distributed execution
• Function execution patterns
• Customizing the ResultCollector
• HA functions
14. Spring Data GemFire
• Spring Data GemFire overview
• Basic cache configuration using SDG
• Implementing Repositories
• Executing Functions
15. Cache Management
• Overview of Disk Stores
• Region persistence
• Expiration
• Eviction
• Resource Manager