I have a Pool Router build from Akka typed Router with 32~64 Routees, and the application is running on top of a cluster with 3 nodes.
I’ve reads the docs from typed routers and I’m not able to understand if Routees in a Pool Router are deployed across the different nodes of my cluster or if they are just deployed all in the same node.
I’ve found this docs from Classic Routers where there is explained how to configure a Pool router where Routees are deployed along the cluster.
Is that Pool routers from typed are deployed along the cluster out of the box? Or is not more supported and I’ve to use Grouped instead of Pool?
In typed remote deploy is not supported at all. This means that a child actor will always be local, so the pool routees, which are spawned as children to the pool router actor are also local. As you were guessing for distribution across nodes you will have to use a group router.
With the group router you can then start any number of routees on the nodes, register them to the local receptionist using the service key which will make the group router know of them.
Pool routers are not singleton, right? I mean, when I declare my Pool of 16 routees, the application will end up with a a pool of 16 routees on each node.
If you start that pool router actor on every node, it will have 16 routees it routes to on that node, but they are not shared in any way with the other router instances.