Hi, I have downloaded and observed the code of the BalancingPool class from the Akka trunc on github (g...@github.com:akka/akka.git).
Of course, although often described as "work stealing", the code documentation says it is rather more a work donating routing strategy: * Although the technique used in this implementation is commonly known as "work stealing", the * actual implementation is probably best described as "work donating" because the actor of which * work is being stolen takes the initiative. However I have been unsuccessful at locating how exactly that is implemented. The following routing class and its supertype seem to present very little sophistication.. private[akka] final class BalancingRoutingLogic extends RoutingLogic { override def select(message: Any, routees: immutable.IndexedSeq[Routee]): Routee = if (routees.isEmpty) NoRoutee else routees.head } So I am definitely looking at the wrong place. Can you please point me at the code taking care of the work stealing/donation of a BalancingPool router? I need to create my own routing logic, and was looking to see how I can preserve the balancing properties of that implementation (any other built-in router that's good for balancing load between local actors would be of equal relevance in this). I will probably implement a parent actor rather than a modified router, but this looked like a good place to look at first. Further to my specific case, I would need to manage a pool of actors that entail heavy cpu-intensive initialization each, whereby they are initialized with a varying seed argument value, and thereafter the parent actor, should route each incoming message to an actor that had been initialized with the same seed parameter. So essentially I would elude slow initialization by routing messages to suitably already-initialized actors. I would also expire actors that have not been used for a configurable while, so that least-popular initialization seeds do not take hold of an actor for long. Thanks, Matan I would need to add and remove actors in a cache-like manner, where actors Thanks, Matan -- >>>>>>>>>> Read the docs: http://akka.io/docs/ >>>>>>>>>> Check the FAQ: >>>>>>>>>> http://doc.akka.io/docs/akka/current/additional/faq.html >>>>>>>>>> Search the archives: https://groups.google.com/group/akka-user --- You received this message because you are subscribed to the Google Groups "Akka User List" group. To unsubscribe from this group and stop receiving emails from it, send an email to akka-user+unsubscr...@googlegroups.com. To post to this group, send email to akka-user@googlegroups.com. Visit this group at http://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.