Database Reference
In-Depth Information
• The fabric load balancer must work well with other load balancers in the environ-
ment.
• To increase resilience, each grid node server must back up a configurable amount
of data from other servers.
• Load balancing and workload distribution is an essential part of the fabric's archi-
tecture, and they should not represent SPOF either. Thus, hub-and-spoke or single
message, or the workload broker pattern is not applicable here. All dispatchers
must be redundant and interconnected to provide maximum resilience.
As you may have already noticed, all these characteristics are properties of the Oracle Co-
herence product, which is based on the distributed Java cache specification and is essen-
tial to implement the last two use cases.
If we look at the SOA patterns catalog again, we will probably find only one pattern re-
lated to the requirements of this distributed fabric: Service Grid. Generally, it is related to
the replication of service state deferrals, that is, the BPEL dehydration DB, which is
highly important to replicate the following:
• The MDS store
• The SOA infrastructure dehydration store
• Audit and process cubes
Although it's highly important, it's only a small part of what Coherence can provide; this
SOA pattern is only the tip of the iceberg as we have lots of service components patterns
that are employed for maintaining a declared list of Coherence characteristics. In a similar
way, you can see the Observer pattern as the low-level architectural pattern, supporting
EDN at the service component level. Here, we have several patterns that support data
caching, serialization, replicating, and processing. Before touching on them, let's briefly
look at the roots of Coherence.
At the very basic level, Coherence uses the idea of a HashMap ( java.util ) as probably
the fastest way of storing, sorting, and retrieving data with two main functions around the
data object: put(key,..) and get(key,value) . So, as you can see, like in the pre-
vious chapter, once again we are dealing with key-value pairs that make the whole idea
highly universal and suitable not only for EDN, but for all kinds of data implementation
processes, for NoSQL in particular. We can combine multiple entry keys into logical stor-
age units, so-called buckets.
Coherence takes this idea further by representing partitions that are stored on single or
multiple cache servers. It also provides mechanisms for taking the key-value pairs of
Search WWH ::




Custom Search