15/37

# Part III

# Creating C++ Extend Clients

Coherence for C++ allows C++ applications to access Coherence clustered services, including data, data events, and data processing from outside the Coherence cluster. Typical uses of Coherence for C++ include desktop and web applications that require access to Coherence caches.

Coherence for C++ consists of a native C++ library that connects to a Coherence*Extend clustered service instance running within the Coherence cluster using a high performance TCP/IP-based communication layer. This library sends all client requests to the Coherence*Extend clustered service which, in turn, responds to client requests by delegating to an actual Coherence clustered service (for example, a partitioned or replicated cache service).

A `NamedCache` instance is retrieved by using the `CacheFactory::getCache(`...`)` API call. Once it is obtained, a client accesses the `NamedCache` in the same way as it would if it were part of the Coherence cluster. The fact that `NamedCache` operations are being sent to a remote cluster node (over TCP/IP) is completely transparent to the client application.

Note:

The C++ client follows the interface and concepts of the Java client, and users familiar with Coherence for Java should find migrating to Coherence for C++ straight forward.

Coherence for C++ contains the following chapters:

- Chapter 7, "Setting Up C++ Application Builds"

- Chapter 8, "Configuration and Usage for C++ Clients"

- Chapter 9, "Understanding the Coherence for C++ API"

- Chapter 10, "Using the Coherence C++ Object Model"

- Chapter 11, "Building Integration Objects for C++ Clients"

- Chapter 12, "Perform Continuous Query for C++ Clients"

- Chapter 13, "Query the Cache for C++ Clients"

- Chapter 14, "Remote Invocation Service for C++ Clients"

- Chapter 15, "Deliver Events for Changes as they Occur (C++)"

- Chapter 17, "Sample Applications for C++ Clients"