Replicated Akka Persistence journal and snapshot store backed by Couchbase.
To include the latest release of the Couchbase plugins into your sbt
project, add the following lines to your build.sbt
file:
resolvers += "Product-Foundry at bintray" at "http://dl.bintray.com/productfoundry/maven"
libraryDependencies += "com.productfoundry" %% "akka-persistence-couchbase" % "0.8"
This version of akka-persistence-couchbase
depends on Akka 2.5.3 and Scala 2.11.11.
It is tested on Travis using Couchbase 3.0.1
- All operations required by the Akka Persistence journal plugin API are fully supported.
- The plugin uses Couchbase in a pure log-oriented way i.e. data are only ever inserted but never updated (deletions are made using deletion markers, rather than performing physical deletion).
- Batches are stored in a single Couchbase message to maintain atomicity.
To activate the journal plugin, add the following line to your Akka application.conf
:
akka.persistence.journal.plugin = "couchbase-journal"
This will run the journal with its default settings. The default settings can be changed with the configuration properties defined in reference.conf.
- Not yet tested under very high loads.
- Implements the Akka Persistence snapshot store plugin API.
To activate the snapshot-store plugin, add the following line to your Akka application.conf
:
akka.persistence.snapshot-store.plugin = "couchbase-snapshot-store"
This will run the snapshot store with its default settings. The default settings can be changed with the configuration properties defined in reference.conf.
Inspired by Cassandra Plugins for Akka Persistence.