I've been playing around with Akka for a bit in order to see if it will be
a good fit for my project.
I have some basic concerns before I get going and I was just wondering if
anyone here had
already done something similar or if you could point me in the right
direction. So on to the project:
Assume that I have access to a large number of devices. These devices all
vary in capabilities
and they are spread over a large area. Basically I want to implement a CEP
system that can
run on these devices.
A user would request for my system to execute a task-graph. Lets say that
the user actually
supplies us with a bunch of actors that will communicate with each other
and would run in a
distributed manner on the different devices.
When this graph has been given to us, some actors will have a specific
device that they need
to run on due to some hardware capability, for example a sensor or an
actuator. The other actors
would need to be deployed onto nearby devices. It would also be necessary
this on-the-fly, so that I can move an actor between two devices without
execution of the task. Possibly also replicate an actor on another device.
Now on to the questions:
I would need the actors to be oblivious to the fact that I have replicated
other actors or if they
are moved to another location(device). What is the best option here when it
comes to sending
* Should I use a router between each actor pair?
* Should I use a pub/sub system for each communication link pair?
* Should I use a balancing dispatcher for each pair?
* Should I use cluster sharding and does that work when I am sending
different types of actors?
When moving an actor with a state I think I might try to use snapshots
rather than persisting
the state after each message and just start a new actor based on that
snapshot. I haven't tried
this yet but from reading the documentation it seemed pretty
straight-forward. Are there any
obvious faults in an approach like this that I fail to see?
If the runtime on a remote device does not have a specific actor class is
there a way for me to
send a jar file or some other way to send code so that it can be
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@example.com.
To post to this group, send email to firstname.lastname@example.org.
Visit this group at http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.