Oracle Blog

The Market Leading In-Memory Datagrid

Monday Jul 14, 2014

The latest version Coherence 12c (12.1.3) has just become available on OTN. This release introduces some significant new features, like support for Memcached clients and the new JCache/JSR107 Java Caching Standard. It also contains the new JVisualVM monitoring plug-in and has some cool optimisations.

Friday Jun 06, 2014

With some awesome work by one of our architects, Randy Stafford, we recently completed a webcast on scaling Java EE apps efficiently. Did you miss it? No problem. We have a replay available on-demand for you. Just hit the '+' sign drop-down for access.

Topics include:

Domain object caching

Service response caching

Session state caching

JSR-107

HotCache and more!

Further, we had several interesting questions asked by our audience, and we thought we'd share a sampling of those here for you - just in case you had the same queries yourself. Enjoy!What is the largest Coherence deployment out there?
We have seen deployments with over 500 JVMs in the Coherence cluster, and deployments with over 1000 JVMs using the Coherence jar file, in one system. On the management side there is an ecosystem of monitoring tools from Oracle and third parties with dashboards graphing values from Coherence's JMX instrumentation. For lifecycle management we have seen a lot of custom scripting over the years, but we've also integrated closely with WebLogic to leverage its management ecosystem for deploying Coherence-based applications and managing process life cycles. That integration introduces a new Java EE archive type, the Grid Archive or GAR, which embeds in an EAR and can be seen by a WAR in WebLogic. That integration also doesn't require any extra WebLogic licensing if Coherence is licensed.

How is Coherence different from a NoSQL Database like MongoDB?
Coherence can be considered a NoSQL technology. It pre-dates the NoSQL movement, having been first released in 2001 whereas the term "NoSQL" was coined in 2009. Coherence has a key-value data model primarily but can also be used for document data models. Coherence manages data in memory currently, though disk persistence is in a future release currently in beta testing. Where the data is managed yields a few differences from the most well-known NoSQL products: access latency is faster with Coherence, though well-known NoSQL databases can manage more data. Coherence also has features that well-known NoSQL database lack, such as grid computing, eventing, and data source integration. Finally Coherence has had 15 years of maturation and hardening from usage in mission-critical systems across a variety of industries, particularly financial services.

Can I use Coherence for local caching?
Yes, you get additional features beyond just a java.util.Map: you get expiration capabilities, size-limitation capabilities, eventing capabilites, etc.

Are there APIs available for GoldenGate HotCache?
It's mostly a black box. You configure it, and it just puts objects into your caches. However you can treat it as a glass box, and use Coherence event interceptors to enhance its behavior - and there are use cases for that.

Are Coherence caches updated transactionally?
Coherence provides several mechanisms for concurrency control. If a project insists on full-blown JTA / XA distributed transactions, Coherence caches can participate as resources. But nobody does that because it's a performance and scalability anti-pattern. At finer granularity, Coherence guarantees strict ordering of all operations (reads and writes) against a single cache key if the operations are done using Coherence's "EntryProcessor" feature. And Coherence has a unique feature called "partition-level transactions" which guarantees atomic writes of multiple cache entries (even in different caches) without requiring JTA / XA distributed transaction semantics.

Wednesday Apr 09, 2014

ActivityBank, part of TUI, is a leading provider of travel transfers. It uses Coherence and Weblogic 12c to scale and accelerated its location based transfer service, calculating location based requests inside Coherence in just a few ms. Read their use case on the Coherence Special Interest Group (SIG) website here.[Read More]

Tuesday Apr 08, 2014

Canon, one of the world's leading manufacturers of cameras, imaging and document technologies, is now able to deliver on performance of millions of real-time transactions with a new and improved system architecture. Based on Oracle SOA Suite, Oracle Coherence, Oracle Exalogic and more, the engineered systems advantage has provided scale, speed and simplicity.

Whether you're an experienced Coherence user, or new to Data Grid technology, the CSIG is the community for realizing Coherence-related projects and best practices. You won't want to miss our quarterly meetings, featuring some of the most active Coherence users as speakers and in the audience.

Thursday Feb 06, 2014

El Corte Inglés S.A., headquartered in Madrid, is the biggest department store group in Europe and ranks fourth worldwide. At a recent Coherence Special Interest Group meeting in Madrid they spoke about how they are using Coherence with Exalogic and ATG (part of the Oracle E-Commerce platform) to provide more up-to-date inventory and delivery information to their online customers. You can find the full presentation here: http://coherence.oracle.com/download/attachments/17662048/Coherence+-+The+Experience+at+El+Corte+Inglés.pdf[Read More]

Thursday Dec 05, 2013

We are excited to announce the availability of the Coherence VisualVM developer plug-in which is part of the new Coherence Incubator 12.1.0 release.

The community plug-in allows developers to view summarised Coherence related statistics and information when connected to a JMX enabled Coherence cluster. Information is collected and summarised from the various Coherence MBeans and displayed in a tabular and graphical format. You also have the ability to select various services and caches to display more detailed node level information about each.

Once installed you will see an additional 'Coherence' tab, when you connect to your Coherence process which is running an MBean server. If you select of this tab, a 'Cluster Summary' tab will be displayed.

Features

The number of sub-tabs displayed varies depending upon what features you are using, but can include:

Cluster Overview - High-level information about the Coherence cluster including cluster name, version, member count and 'Cluster StatusHA'. Summary graphs show total cluster memory available and used, packet publisher and receiver success rates and load averages for machines running Coherence.

Machines - A list of the physical machines that make up the Coherence cluster as well as information about the load averages and available memory on these machines.

Members - The full list of Coherence members/nodes, including individual publisher/receiver success rates, memory and send queue sizes.

Services - Information about the running services including partition counts and statusHA values. If you select a service, on the next data refresh you will see detailed thread information for each node of the service as well as graphs of that information.

Caches - Displays information about any caches, including their size and memory usage information. To get the correct information to be displayed for memory usage, you must be using the binary unit-calculator. If you select a cache, on the next data refresh you will see detailed information about each node hosting that service and cache.

Proxy Servers - If your cluster is running proxy servers, this tab displays information about the proxy servers and the number of connections across each proxy server and total connections. You also have the ability to include or exclude the NameService.

Coherence*Web - If your cluster is configured for Coherence*Web, this tab displays information about the number of applications deployed, the number of HTTP sessions being stored as well as other information regarding session reaping.

A sample of the Members sub-tab is shown below, with visual clues - that are included on the various screens - to draw attention to potential issues.

The Services sub-tab below shows how to select an individual service and monitor detailed metrics, like as thread utilisation.

A pre-built NetBeans Module (NBM) is available via search.maven.org or you can build as part of the Incubator above.

The VisualVM tool is available with any download of JDK 1.7 or at http://visualvm.java.net. The Coherence plug-in is designed to work with JDK 7 Update 40 and above.

If your cluster is running on an earlier version of Java, you can still use the latest JVisualVM and connect remotely to your cluster to view statistics.

Note: This is a developer tool for viewing information about a single cluster at a time. Other monitoring tools such as Oracle's Enterprise Manager or other 3rd party tools are suited for enterprise level monitoring, management and alerting.

Friday Nov 15, 2013

December there will be a number of Coherence Special Interest Group (SIG) meetings around Europe. These are free to attend, just register on online agenda page. They include talks from customers, partners, consultants, engineers and product managers, and are great way to find out more about Coherence, hear what is coming up and seer how customers are using it. [Read More]

Friday Nov 01, 2013

In this 19 minute video, Coherence engineers and architects discuss the evolution of the Oracle Coherence Community on Java.net and how developers can actively participate in product development through Coherence Community open projects.

Monday Oct 28, 2013

Just a quick reminder about the FREE virtual developer day focused on Coherence (and WebLogic) coming on November 5th.

This day, with content tailored for developers, will guide you through tooling updates and best practices around creating applications with WebLogic and Coherence as target platforms. We'll also explore advances in how you can manage your build, deploy and ongoing management processes to streamline your application's life cycle. And of course, we'll conclude with some hands-on labs that ensure this isn't all a bunch of made-up stuff - get your hands dirty in the code!

We're offering two tracks for your attendance, though of course you're free to attend any session you wish. The first will be for pure developers with sessions around developing for WebLogic with HTML5, processing live events with Coherence, and looking at development tooling. The second is for developers who are involved in the building and management processes as part of the application life cycle. These sessions focus on using Maven for builds, using Chef and Puppet for configuration and more.

We look forward to seeing you there - don't forget to invite a friend!

Friday Oct 25, 2013

Recently, Oracle Coherence released its 12c version, focused on scalability and real-time data delivery. As part of the launch, we showcased Coherence's tight coupling with Exalogic Elastic Cloud. By leveraging the Inifiniband Fabric in Exalogic, Coherence can now operate at up to 6x the speed on as little as half the hardware on an Exalogic box. This breakthrough is helping customers save money on their hardware costs while improving performance of their data grid.

Here's a free resource available for you to explore this technology relationship further.

For even more information on Coherence, attend our upcoming free virtual developer day on November 5th to see how developers can leverage Coherence in their everyday tasks.

Thursday Oct 17, 2013

Queries are a common feature of many Coherence applications, but when used with online eCommerce application great performance is crucial. Here Xavier March steps through the query optimisations he made for a real-world application and shares the amazing difference each successive optimisation made. [Read More]