Hi, This is probably a fairly simple question; I'm hoping to receive the advice of those more experienced.
I've been enjoying learning Scala, Play! & Akka over the past few weeks. Now it's down to business and I need to design an application that will scale well. Reducing it down to just the point, the application will accept compute-and-database-heavy, parallelizable requests from users. There will be an unknown number of users who will generate an unknown request arrival rate. The requests will be serviced by *remote* backend actors. Each request may comprise from 1 to thousands of distinct and independent elements. It seems to me the back-end requests would be best satisfied by a pool of actors that will scale itself up in some manner, and the app would route the requests via a router -- I'm good with doing that. Where I am getting bogged down is here: is it better for the controller that serves each request to spawn its own router and back-end pool, or I should have a central router? I'm a little uneasy about each request spawning its own router and pool because that just seems a bit uncontrolled; also it has implications on the cluster state. On the other hand, how would I get a central router to scale? What I seem to need is a pool of routers. But then it's turtles all the way down? Maybe a pool isn't the way to go, but instead use a group, but then it seems I need to duplicate the logic that's already conveniently present for pools. Any advice would be warmly received. -- >>>>>>>>>> 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 [email protected]. To post to this group, send email to [email protected]. Visit this group at https://groups.google.com/group/akka-user. For more options, visit https://groups.google.com/d/optout.
