Hi,

I am quite new to Akka and am currently investigating if it's a good idea 
to replace some of our logic built around AMPQ (RabbitMQ) with Akka and 
actor model. Here's one of our scenarios:

1. Receive a message from RabbitMQ.
2.1-2.n Perform several operations, some of them in a transaction scope.
3. Ack the RabbitMQ message if performed operations are OK, otherwise Nack 
the message and replay it with some configurable delay.

We think that step (3) is rather complicated and would like to stop using 
RabbitMQ as a part of distributed transaction. We would rather ack the 
message right upon its arrival and deal with possible failures using 
persistent actors. So I am trying to figure out what would be the right 
transition to Akka now that we have:

- An incoming message that we need to be able to replay in case of an 
operational failure.
- A sequence of actors triggered by the message processing, each of them 
may fail

Questions:

1. Do we need to make each actor persistent in order to ensure it can 
replay incomplete messages?
2. Will the actor persistence solve the problem of replaying unprocessed 
messages in case of system outage?
3. Can different persistent actors use different physical stores even 
though they are part of the same deployment unit?
4. What if we decide to move an actor between deployment units or machines? 
How can we make its event history follow the actor?

Thanks in advance

Vagif

-- 
>>>>>>>>>>      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 http://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to