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
40 Algorithms Every Programmer Should Know
Learn algorithms for solving classic computer science problems with this concise guide covering everything from fundamental …
book
Software Engineering at Google
Today, software engineers need to know not only how to program effectively but also how to …
book
Head First Design Patterns, 2nd Edition
You know you don’t want to reinvent the wheel, so you look to design patterns—the lessons …
book
Fundamentals of Software Architecture
Salary surveys worldwide regularly place software architect in the top 10 best jobs, yet no real …