Free Sample
+ Collection

Oracle Coherence 3.5

Aleksandar Seovic, Mark Falco, Patrick Peralta

Create Internet-scale applications using Oracle’s Coherence high-performance data grid with this book and eBook
RRP $35.99
RRP $59.99
Print + eBook

Want this title & more?

$16.99 p/month

Subscribe to PacktLib

Enjoy full and instant access to over 2000 books and videos – you’ll find everything you need to stay ahead of the curve and make sure you can always get the job done.

Book Details

ISBN 139781847196125
Paperback408 pages

About This Book

  • Build scalable web sites and Enterprise applications using a market-leading data grid product
  • Design and implement your domain objects to work most effectively with Coherence and apply Domain Driven Designs (DDD) to Coherence applications
  • Leverage Coherence events and continuous queries to provide real-time updates to client applications
  • Successfully integrate various persistence technologies, such as JDBC, Hibernate, or TopLink, with Coherence
  • Filled with numerous examples that provide best practice guidance, and a number of classes you can readily reuse within your own applications

Who This Book Is For

This book is written for architects and developers responsible for the design and development of Internet or Enterprise applications (web-based or otherwise) that need to scale to support a large number of simultaneous users, while at the same time providing fast response times and high availability. The book assumes a solid knowledge of Java, and a familiarity with Domain Driven Design (DDD) is helpful.

Table of Contents

Chapter 1: Achieving Performance, Scalability, and Availability Objectives
Achieving performance objectives
Achieving scalability
Achieving high availability
Putting it all together
Chapter 2: Getting Started
Installing Coherence
What's in the box?
Starting up the Coherence cluster
Accessing the data grid
Testing and debugging Coherence applications
Chapter 3: Planning Your Caches
Anatomy of a clustered cache
Clustered cache topologies
Backing maps
Cache configuration
Chapter 4: Implementing Domain Objects
Introducing the Coherent Bank sample application
Domain model building blocks
Implementing object serialization
Adding support for schema evolution
Chapter 5: Querying the Data Grid
Built-in filters
Value extractors
Simplifying Coherence queries
Obtaining query results
Using indexes to improve query performance
Coherence query limitations
Chapter 6: Parallel and In-Place Processing
Entry processors
Invocation service
CommonJ Work Manager
Coherence Incubator
Chapter 7: Processing Data Grid Events
Cache events
Backing map events
Map triggers
Continuous query cache
Chapter 8: Implementing the Persistence Layer
Cache aside
Read-through caching
Implementing read through
Write through
Write behind
Configuring backup with a read-write backing map
Built-in CacheStore implementations
Chapter 9: Bridging Platform and Network Boundaries
Coherence networking
Coherence*Extend overview
Configuring Coherence*Extend
Coherence*Extend limitations
Securing proxy servers
Using network filters
Chapter 10: Accessing Coherence from .NET
.NET client configuration
Implementing the client application
Chapter 11: Accessing Coherence from C++
Configuring Coherence C++
Managed object model
Implementing a Coherence C++ client application
Chapter 12: The Right Tool for the Job

What You Will Learn

  • Best use distributed caching to reduce the load on the backend database
  • Design and implement your domain objects to work most effectively with Coherence
  • Apply Domain Driven Design (DDD) principles to Coherence applications
  • Query and aggregate data efficiently within the Coherence grid
  • Boost application performance by executing tasks in parallel within the grid
  • Leverage Coherence events and continuous queries to provide real-time updates to client applications
  • Integrate various persistence technologies, such as JDBC, Hibernate, or TopLink, with Coherence
  • Access Coherence from .NET and C++ applications using Coherence*Extend
  • Test and debug Coherence-related code

Chapter 1, Achieving Performance, Scalability, and Availability Objectives discusses obstacles to scalability, performance, and availability and also some common approaches that are used to overcome these obstacles. It also talks about how these solutions can be improved using Coherence.

Chapter 2, Getting Started teaches you how set up Coherence correctly in a development environment, and the basics of how to access Coherence caches, both by using the supplied command-line client and programmatically.

Chapter 3, Planning Your Caches covers various cache topologies supported by Coherence and provides guidance on when to use each one and how to configure them.

Chapter 4, Implementing Domain Objects introduces the sample application we will be building throughout the book and shows you how to design your domain objects to take full advantage of Coherence.

Chapter 5, Querying the Data Grid teaches you how to use Coherence queries and aggregators to retrieve data from the cache in parallel.

Chapter 6, Parallel and In-Place Processing covers Coherence features that allow you to perform in-place or parallel processing within a data grid.

Chapter 7, Processing Data Grid Events shows you how to use powerful event mechanisms provided by Coherence.

Chapter 8, Implementing Persistence Layer discusses options for integration with various data repositories, including relational databases.

Chapter 9, Bridging Platform and Network Boundaries covers the Coherence*Extend protocol, which allows you to access a Coherence cluster from remote clients and from platforms and languages other than Java, such as .NET and C++.

Chapters 10, Accessing Coherence from .NET and Chapter 11, Accessing Coherence from C++ teach you how to access Coherence from .NET and C++ clients, respectively.

Chapter 12, The Right Tool for the Job, provides some parting thoughts and reiterates practices you should apply when building scalable applications.

Appendix, Coherent Bank Sample Application, describes how to set up the sample application that accompanies the book in your environment.

In Detail

Scalability, performance, and reliability have to be designed into an application from the very beginning, as there may be substantial cost or implementation consequences if they need to be added down the line. This indispensible book will teach you how to achieve these things using Oracle Coherence, a leading data grid product on the market.

Authored by leading Oracle Coherence authorities, this essential book will teach you how to use Oracle Coherence to build high-performance applications that scale to hundreds of machines and have no single points of failure. You will learn when and how to use Coherence features such as distributed caching, parallel processing, and real-time events within your application, and understand how Coherence fits into the overall application architecture.

Oracle Coherence provides a solid architectural foundation for scalable, high-performance and highly available enterprise applications, through features such as distributed caching, parallel processing, distributed queries and aggregations, real-time events, and the elimination of single points of failure.

However, in order to take full advantage of these features, you need to design your application for Coherence from the beginning. Based on the authors' extensive knowledge of Oracle Coherence, and how to use it in the real world, this book will provide you with all the information you need in order to leverage various Coherence features properly. It contains a collection of best practice-based solutions and mini-frameworks that will allow you to be more productive from the very beginning.

The early chapters cover basics like installation guidelines and caching topologies, before moving on to the domain model implementation guidelines, distributed queries and aggregations, parallel processing, and real-time events. Towards the end, you learn how to integrate Coherence with different persistence technologies, how to access Coherence from platforms other than Java, and how to test and debug classes and applications that depend on Coherence.


Read More

Recommended for You