Clients connect to a catalog service, retrieve a description
of the server topology, and communicate directly to each server as
needed. When the server topology changes because new servers are added
or existing servers have failed, the dynamic catalog service routes
the client to the appropriate server that is hosting the data. Clients
must examine the keys of application data to determine which partition
to route the request. Clients can read data from multiple partitions
in a single transaction. However, clients can update only a single
partition in a transaction. After the client updates some entries,
the client transaction must use that partition for updates.
You can use two types of clients: Java clients
and .NET clients. You can use Java clients only, .NET clients only,
or you can use both types to access the same catalog server and data
grid.
Java clients
Java client applications run
on
Java™ virtual
machines (JVM) and connect
to the catalog service and container servers.
- A catalog service exists in its own data grid of Java virtual
machines. A single catalog service
can be used to manage multiple clients or container servers.
- A container server can be started in a JVM by itself or can be
loaded into an arbitrary JVM with
other containers for different data grids.
- A client can exist in any JVM and
communicate with one or more data grids. A client can also exist in
the same JVM as a container
server.
Figure 1. Possible topologies
.NET clients
.NET clients
work similarly to Java clients, but do not run in JVMs. .NET clients
are installed remotely from your catalog and container servers. You
connect to the catalog service from within the application. You can
use a .NET client application to connect to the same data grid as
your Java clients. For more information about using Java and .NET
clients together, see
Scenario: Configuring an enterprise data grid.