* Separate routing logic, to be usable stand alone, e.g. in actors
* Simplify RouterConfig, only a factory
* Move reading of config from Deployer to the RouterConfig
* Distiction between Pool and Group router types
* Remove usage of actorFor, use ActorSelection
* Management messages to add and remove routees
* Simplify the internals of RoutedActorCell & co
* Move resize specific code to separate RoutedActorCell subclass
* Change resizer api to only return capacity change
* Resizer only allowed together with Pool
* Re-implement all routers, and keep old api during deprecation phase
* Replace ClusterRouterConfig, deprecation
* Rewrite documentation
* Migration guide
* Also includes related ticket:
+act #3087 Create nicer Props factories for RouterConfig
* Config of node roles cluster.role
* Cluster router configurable with use-role
* RoleLeaderChanged event
* Cluster singleton per role
* Cluster only starts once all required per-role node
counts are reached,
role.<role-name>.min-nr-of-members config
* Update documentation and make use of the roles in the examples
* This also removes the need for the withClusterRouter sugar
* Improved the apply and constructors for ClusterRouterSettings, since
that will be user api instead
- Changed semantics of replica config. Default replicas is now 0. Replica 1 means one copy of the actor is instantiated on another node.
- Actor.remote.actorFor/Actor.remote.register is now separated and orthogonal from cluster implementation.
- cluster.ref now creates and instantiates its replicas automatically, e.g. it can be created first and will then set up what it needs.
- Added logging everywhere, better warning messages etc.
- Each node now fetches the whole deployment configuration from the cluster on boot.
- Added some config options to cluster
Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>
Refactored boot dependency in Cluster/Actor/Deployer.
Added multi-jvm test for testing clustered actor deployment, check out as LocalActorRef and ClusterActorRef.
Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>
Fixed problems with ClusterDeployerSpec and ClusterMultiJvmSpec.
Removed all akka-remote tests and samples (needs to be rewritten later).
Added Actor.cluster member field.
Removed Actor.remote member field.
Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>
Removed possibility to create multiple ClusterNode, now just one in Cluster.node.
Changed timestamp format for default EventHandler listener to display NANOS.
Cleaned up ClusterModule in ReflectiveAccess.
Signed-off-by: Jonas Bonér <jonasremove@jonasboner.com>