All Projects → j5ik2o → akka-persistence-s3

j5ik2o / akka-persistence-s3

Licence: Apache-2.0 license
akka-persistence journal/snapshot plugin for AWS S3(support aws sdk for java v2)

Programming Languages

scala
5932 projects
shell
77523 projects

Projects that are alternatives of or similar to akka-persistence-s3

akka-persistence-dynamodb
DynamoDBJournal for Akka Persistence
Stars: ✭ 85 (+347.37%)
Mutual labels:  akka, akka-persistence
akka-persistance-ignite
Akka persistance plugin implementation with Apache Ignite
Stars: ✭ 20 (+5.26%)
Mutual labels:  akka, akka-persistence
simplexspatial
The Reactive Geospatial Server
Stars: ✭ 17 (-10.53%)
Mutual labels:  akka, akka-persistence
akka-cookbook
提供清晰、实用的Akka应用指导
Stars: ✭ 30 (+57.89%)
Mutual labels:  akka, akka-persistence
generator-jvm
Generate JVM (java, kotlin, scala) project with gradle / maven / sbt build systems and docker / docker-compose for rapid development
Stars: ✭ 40 (+110.53%)
Mutual labels:  akka, akka-persistence
atomic-store
Atomic event store for Scala/Akka
Stars: ✭ 17 (-10.53%)
Mutual labels:  akka, akka-persistence
akka-persistence-foundationdb
A replicated Akka Persistence journal backed by FoundationDB
Stars: ✭ 43 (+126.32%)
Mutual labels:  akka, akka-persistence
akka-persistence-gcp-datastore
akka-persistence-gcp-datastore is a journal and snapshot store plugin for akka-persistence using google cloud firestore in datastore mode.
Stars: ✭ 18 (-5.26%)
Mutual labels:  akka, akka-persistence
Akka
Examples and explanations of how Akka toolkit works
Stars: ✭ 20 (+5.26%)
Mutual labels:  akka, akka-persistence
ecommerce
A project for exploring Akka with Scala
Stars: ✭ 24 (+26.32%)
Mutual labels:  akka, akka-persistence
akka-persistence-spanner
Spanner plugin for Akka Persistence
Stars: ✭ 12 (-36.84%)
Mutual labels:  akka, akka-persistence
Akka Rabbitmq
RabbitMq client in Scala and Akka actors
Stars: ✭ 228 (+1100%)
Mutual labels:  akka
Akka Stream Contrib
Add-ons to Akka Stream
Stars: ✭ 173 (+810.53%)
Mutual labels:  akka
Lighthouse
Lighthouse - a simple service discovery platform for Akka.Cluster (Akka.NET)
Stars: ✭ 164 (+763.16%)
Mutual labels:  akka
Akka
Build highly concurrent, distributed, and resilient message-driven applications on the JVM
Stars: ✭ 11,938 (+62731.58%)
Mutual labels:  akka
Powerjob
Enterprise job scheduling middleware with distributed computing ability.
Stars: ✭ 3,231 (+16905.26%)
Mutual labels:  akka
Akka Guide
🌴 A chinese guide of Akka, based on Java.
Stars: ✭ 217 (+1042.11%)
Mutual labels:  akka
Safe Chat
IRC-style chat demo featuring full-stack F#, Akka.Streams, Akkling, Fable, Elmish, Websockets and .NET Core
Stars: ✭ 157 (+726.32%)
Mutual labels:  akka
Justindb
⚛️ JustinDB is a highly available globally distributed key-value data store.
Stars: ✭ 147 (+673.68%)
Mutual labels:  akka
Tacks
Real-time multiplayer sailing game, in your browser
Stars: ✭ 134 (+605.26%)
Mutual labels:  akka

akka-persistence-s3(support aws sdk for java v2)

CI Scala Steward badge Maven Central License FOSSA Status

akka-persistence-s3 writes snapshot entries to AWS S3. It's non-blocking I/ O used by aws-sdk-java-v2.

Supported versions:

  • Java: 1.8+
  • Scala: 2.12.x or 2.13.x or 3.0.0
  • Akka: 2.6.x
  • AWS-SDK: 2.4.x

Installation

Add the following to your sbt build (2.12.x, 2.13.x, 3.0.0):

val version = "..."

libraryDependencies += Seq(
  "com.github.j5ik2o" %% "akka-persistence-s3-journal" % version,
  "com.github.j5ik2o" %% "akka-persistence-s3-snapshot" % version
)

Configuration

The minimum necessary settings are as follows.

j5ik2o {
  s3-snapshot-store {
    # if need to resolve a static value
    # bucket-name = "..."
    # if need to resolve a dynamic value
    bucket-name-resolver-class-name = "com.github.j5ik2o.akka.persistence.s3.resolver.BucketNameResolver$PersistenceId"
    key-converter-class-name = "com.github.j5ik2o.akka.persistence.s3.resolver.KeyConverter$PersistenceId"
    # if need to resolve a static value
    # path-prefix = "..."
    # if need to resolve a dynamic value
    path-prefix-resolver-class-name = "com.github.j5ik2o.akka.persistence.s3.resolver.PathPrefixResolver$PersistenceId"
    extension-name = "snapshot"
    max-load-attempts = 3
    s3-client {
      # Set the following as needed
      access-key-id = "..."
      secret-access-key = "..."
      endpoint = "..."
      region = "..."
      max-concurrency = 128
      max-pending-connection-acquires = ?
      read-timeout = 3 s
      write-timeout = 3 s
      connection-timeout = 3 s
      connection-acquisition-timeout = 3 s
      connection-time-to-live = 3 s
      max-idle-connection-timeout = 3 s
      use-connection-reaper = true
      threads-of-event-loop-group = 32
      user-http2 = true
      max-http2-streams = 32
      batch-get-item-limit = 100
      batch-write-item-limit = 25
      s3-options {
        dualstack-enabled = false
        accelerate-mode-enabled = false
        path-style-access-enabled = true
        checksum-validation-enabled = false
        chunked-encoding-enabled = false
        use-arn-region-enabled = false
      }
    }
  }
}

License

FOSSA Status

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].