Book description
Get the definitive guide on all the fundamentals of Terracotta as well as user secrets, recipes, and prepackaged frameworks.
Written by Terracotta's chief technology officer Ari Zilka and his team, The Definitive Guide to Terracotta: Cluster the JVM for Spring, Hibernate and POJO Scalability covers the following:
High Availability (HA) nth degree scaling and clustering for traditional J2EE and Java EE 5 applications (using Seam or other application) as well as Spring-based enterprise applications
Everyday Terracotta using its prepackaged frameworks and integration recipes, including configuration and customization for your application tuning, no matter the scale
Power user secrets available, including config modules, customized advanced performance tuning, SDLC, Maven, and more
Table of contents
- Copyright
- About Terracotta, Inc.
- About the Authors
- About the Technical Reviewer
- Introduction
- 1. Theory and Foundation Forming a Common Understanding
- 2. History of Terracotta
-
3. Jumping Into Terracotta
- 3.1. Hello Clustered World
-
3.2. A Tour Through Terracotta
- 3.2.1. Downloading and Installing Terracotta
- 3.2.2. Terracotta Installation Layout
- 3.2.3. Terracotta Scripts
-
3.2.4. Step-by-Step Hello Clustered World in Unix
- 3.2.4.1. Creating a Project Skeleton
- 3.2.4.2. Creating HelloClusteredWorld.java
- 3.2.4.3. Creating the Terracotta Configuration
- 3.2.4.4. Making the Terracotta Server Run in Persistent Mode
- 3.2.4.5. Configuring the Terracotta Client
- 3.2.4.6. Configuring Roots
- 3.2.4.7. Configuring Instrumentation
- 3.2.4.8. Configuring Locks
- 3.2.4.9. Reviewing the Configuration
- 3.2.4.10. Starting the Terracotta Server
- 3.2.4.11. Starting Two Clustered Instances of HelloClusteredWorld
- 3.2.4.12. Viewing Runtime Data in the Terracotta Administration Console
- 3.2.4.13. High Availability
- 3.2.4.14. Heap Durability
- 3.2.5. Step-by-Step Hello Clustered World in Eclipse
- 3.3. Implications for Every Developer
- 3.4. Summary
-
4. POJO Clustering
- 4.1. All About Objects and Roots
- 4.2. Clustered Objects
- 4.3. Virtual Heap and Memory Management
- 4.4. Distributed Garbage Collection
- 4.5. Managing Object Changes and Coordinating Threads
- 4.6. Locks
- 4.7. Transactions
- 4.8. Distributed Method Invocation
- 4.9. Transparency and Bytecode Instrumentation
- 4.10. Portability
- 4.11. Boot JAR Classes
- 4.12. Physically vs. Logically Managed Objects
- 4.13. Nonportable and Logically Managed Classes
- 4.14. Portability Contexts
- 4.15. Transient Fields and On-Load Behavior
- 4.16. Clustered POJOs Step by Step
- 4.17. An Example of Clustered POJOs
- 4.18. Summary
- 5. Caching
-
6. Hibernate with Terracotta Using Terracotta to Offload the Database
- 6.1. Object-Relational Mapping
- 6.2. How Does Hibernate Work?
- 6.3. Typical Hibernate Invocation
- 6.4. Using Terracotta to Improve Hibernate
- 6.5. How Terracotta Improves Hibernate Performance
-
6.6. Configuring Hibernate to Work with Terracotta
- 6.6.1. Configuring a Second-Level Cache
- 6.6.2. Configuring Terracotta for Use with Detached Instances
- 6.7. Debugging, Testing, and Tuning Concerns
- 6.8. Summary
-
7. Extending HTTP Sessions with Terracotta
- 7.1. What Are HTTP Sessions?
- 7.2. Distributed HTTP Sessions
- 7.3. Distributed HTTP Sessions with Terracotta
- 7.4. Using Terracotta and HTTP Sessions
- 7.5. Understanding HTTP Sessions with Terracotta
- 7.6. Summary
-
8. Clustering Spring
- 8.1. A Sample: Spring Beans Without a Database
- 8.2. Running the Example on a Single JVM
- 8.3. Running the Example Clustered with Terracotta
- 8.4. A Note on DI and Terracotta
- 8.5. Growing Spring Beans
- 8.6. Clustering Spring Beans
- 8.7. Running with Clustered Spring Beans
- 8.8. Terracotta Session Clustering for Spring
- 8.9. Summary
- 9. Integration Modules
- 10. Thread Coordination
-
11. Grid Computing Using Terracotta
- 11.1. What Are Grids?
- 11.2. Introducing the Master/Worker Pattern
- 11.3. Master/Worker in Java
- 11.4. Getting Started: Naïve Single Work Queue Implementation
- 11.5. Handling Real-World Challenges
- 11.6. Refactoring for Large Workloads, Routing, and Work Failover
- 11.7. Refactoring Work Batching, Worker Failover, and Dynamic Worker Management
- 11.8. Building a Distributed Web Spider
- 11.9. When Not to Use the Master/Worker Pattern
- 11.10. Summary
- 12. Visualizing Applications
Product information
- Title: The Definitive Guide to Terracotta: Cluster the JVM™ for Spring, Hibernate, and POJO Scalability
- Author(s):
- Release date: June 2008
- Publisher(s): Apress
- ISBN: 9781590599860
You might also like
book
Tidy First?
Messy code is a nuisance. "Tidying" code, to make it more readable, requires breaking it up …
book
Clean Code: A Handbook of Agile Software Craftsmanship
Even bad code can function. But if code isn’t clean, it can bring a development organization …
book
Clean Architecture: A Craftsman's Guide to Software Structure and Design
Building upon the success of best-sellers The Clean Coder and Clean Code, legendary software craftsman Robert …
book
Effective Java, 3rd Edition
Since this Jolt-award winning classic was last updated in 2008, the Java programming environment has changed …