Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] Akka.Cluster.Tools & Akka.Cluster.Sharding with tests and examples #1502

Merged
merged 1 commit into from
Dec 6, 2015

Conversation

Horusiath
Copy link
Contributor

This PR introduces two cluster contrib modules:

  • Akka.Cluster.Tools gives cluster singleton, distributed topic-based publish/subscribe mechanism and cluster client to allow to communicate with akka cluster from actor systems not joined to the cluster itself. Example can be found under /Examples/Cluster/ClusterTools path. Known issue is that JSON.NET is not able to correctly deserialize Dictionary<Address, ...> type, which is used in one of the messages by distributed pub/sub and cluster client.
  • Akka.Cluster.Sharding gives ability to create sharded on-demand actor creation with automatic rebalancing and handoff on eventual cluster node failures. Example can be found under /Examples/Cluster/ClusterSharding path and uses Akka.Persistence.Sqlite as (required) persistence backend. It used bin/Debug/store.db database file for automatic cluster resolution - it must be removed between separate usages, as cluster nodes doesn't get removed automatically when someone will hard kill the process.

Additional changes:

  • SerializerWithManifest class ported from JVM akka-core.
  • Serializer Identifier can be configured through HOCON config. Can be resolved using SerializerIdentifierHelper class.

Known issues, that still need to be resolved:

  • Default serializer support for Akka.Cluster.Tools.
  • Making all multinode test runner specs working.
  • There are some known problems with cluster shards rebalancing when nodes containing shards are crashing.

@Horusiath Horusiath force-pushed the akka-cluster-sharding branch 2 times, most recently from 7acdf33 to bbdc3d0 Compare December 5, 2015 19:04
@Horusiath Horusiath force-pushed the akka-cluster-sharding branch from bbdc3d0 to 3dd31a1 Compare December 5, 2015 19:50
@rogeralsing
Copy link
Contributor

Code bomb, impossible to review, but the code is isolated from all other bits so I'm pulling this and I'll manually run tests after merge..

rogeralsing added a commit that referenced this pull request Dec 6, 2015
[WIP] Akka.Cluster.Tools & Akka.Cluster.Sharding with tests and examples
@rogeralsing rogeralsing merged commit 698569e into akkadotnet:dev Dec 6, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants