I own a Play 2.2 application.

I'm about to implement an Akka 
EventBus<http://doc.akka.io/docs/akka/2.2.4/scala/event-bus.html> capable 
of managing my various Domain Events inside my app. The workflow would be:

   - At application startup (Global.scala), an Akka Actor is scheduled 
   periodically, retrieving current unpublished events from database.
   - Then this scheduled actor would publish those events on the Akka 
   EventBus.
   - Various specific subscribing actors would then handle concerned events.

The important point is: I also own 2 *Web* Dynos on Heroku , each one 
running the app so.

Therefore, two drawbacks:

   - Akka EventBus are strictly working on their own JVM (duplication of 
   EventBus proportional to number of dynos).
   - One application startup for each dyno among n, involving the presence 
   of n event retrievers (scheduled actor as explained above).

Both typical unwished scenarios would be either:

   - 
   
   Event1 is published multiple times (since one application startup by 
   dyno)
   - 
   
   Even when Event1 is published the first time, it might be handled 
   several times by each EventBuspresent on each Dyno.
   
How to deal with this case?

*Am I forced to create a Worker Dyno, containing the EventBus + the event 
handlers or an easier solution may exist?*

-- 
-- 
You received this message because you are subscribed to the Google
Groups "Heroku" group.

To unsubscribe from this group, send email to
heroku+unsubscr...@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/heroku?hl=en_US?hl=en

--- 
You received this message because you are subscribed to the Google Groups 
"Heroku Community" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to heroku+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to