Skip to content

simukappu/coherence-tools

Repository files navigation

Coherence tools

Build Status Maven Central MIT License

Utility tools for Oracle Coherence

Description

Utility tools for Oracle Coherence includes following components

Distributed Processing Tools

Maven Central

Tools to run distributed processing task in multiple Coherence member processes exclusively. This component enables distributed processing with dynamic changes in number of processing members, which provides following functions

  • FIFO distributed processor: Consumer/Function implementation for distributed processing as first in, first out
  • Hash modulo filter: Filter to get target entries by hashCode modulo of a key/value object or a field of it

See distributed-processing-tools

Write Behind Tools

Maven Central

Tools for write behind queue, which provides following functions

  • Get current write behind queue size in the cluster
  • Clear retaining data in write behind queue in the cluster

See write-behind-tools

Spring MyBatis CacheStore

Maven Central

CacheStore implementation integrated with Spring and MyBatis framework

See spring-mybatis-cachestore

Multi Clusters Proxy

Maven Central

Tools for Coherence*Extend proxy to connect with multiple clusters, which provides following components

  • SelectableCacheFactory: Extended CacheFactory class to operate multiple named caches from different clusters

See multi-clusters-proxy

Usage

You can use coherence-tools with Apache Maven from Maven Central Repository. Add dependency to pom.xml like this:

<dependency>
  <groupId>io.github.simukappu</groupId>
  <artifactId>coherence-tools</artifactId>
  <version>1.0.0</version>
  <type>pom</type>
</dependency>

If you would like to use specific module, add dependency to pom.xml like this:

<dependency>
  <groupId>io.github.simukappu</groupId>
  <artifactId>distributed-processing-tools</artifactId>
  <version>1.0.0</version>
</dependency>

Requirements

These tools require Oracle Coherence.

Using Oracle Coherence Community Edition

All builtin test modules uses Oracle Coherence Community Edition. All required modules are packaged as Maven project.

Using Oracle Coherence Non-Community Edition

If you would like to use non-community edition, you need to install Oracle Coherence. See Oracle Coherence for more details (When not for development purposes, Oracle Coherence license is needed).

  1. Download Coherence Stand-Alone Install from Oracle Technology Network

  2. Run installer as following command with your Coherence version

$ java -jar fmw_12.2.1.0.0_coherence.jar
  1. Register Coherence to local Maven repository
$ mvn -DpomFile=$ORACLE_HOME/oracle_common/plugins/maven/com/oracle/maven/oracle-maven-sync/12.2.1/oracle-maven-sync-12.2.1.pom -Dfile=$ORACLE_HOME/oracle_common/plugins/maven/com/oracle/maven/oracle-maven-sync/12.2.1/oracle-maven-sync-12.2.1.jar install:install-file
$ mvn -Doracle-maven-sync.oracleHome=$ORACLE_HOME -Doracle-maven-sync.testOnly=false com.oracle.maven:oracle-maven-sync:12.2.1-0-0:push

License

MIT License