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
[email protected]
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 [email protected].
For more options, visit https://groups.google.com/groups/opt_out.

Reply via email to