Why not just spawn an actor to deal with the timeout-management?

Cheers,
√


On Fri, Jan 17, 2014 at 3:06 PM, Jatin Puri <[email protected]> wrote:

> We are developing a product using akka and plan to use it in production.
> During load-test's I have observed a behavior and need some guidance over
> it. I will give some brief details first:
>
> I have an actor 'A'. There are say other '10' actors which are all
> remotely deployed seperately.
> 1) An Actor 'A' on receiving a message, sends a message("Update") to other
> '10' actors
> 2) It schedules a message to itself after 0.5 second. On receving this
> message, it checks if it has received notification from '10' Actors. If any
> of the actor has not replied, then it re-sends the message to that actor
> and set's a schedule for itself for 0.5 seconds to verify again
> 3) If at 6th attempt, it still fails then a failure response is sent back
> to client
>
> Problem:
> 'A' is sending a message to each actor (so expects 10 notifications
> total). But hey, some notifications might not reach on time (for whatever
> reason) and duplicate messages are sent. Thus expected notifications by 'A'
> for one message from client is ">=10 and <=60". Issue:
> 1) Exponential increase in time taken to reply back to client as load
> increases.
> This is because 'A' happens to spend much more time doing internal work
> than taking requests.
> At worse, if message drop rate is high then the whole system is at a stand
> still as there are too many scheduled messages (sent to itself to verify)
> and notifications from other actors. Also due to the extended delay, many
> "Update" fail and unneccessory duplicate messages are sent to '<10' actors
> again.
>
> What can be the solution to it?
>
> I can forgo Thread-Safety and manage it myself. Can I have some mechanism
> where multiple threads access the same actor? This can help me processing
> the mail-box a bit faster. Surely, single threaded processing is not
> helping me.
> Anything else?
>
> Else Akka is awesome!!
>
>
>
>
>
>  --
> >>>>>>>>>> Read the docs: http://akka.io/docs/
> >>>>>>>>>> Check the FAQ: http://akka.io/faq/
> >>>>>>>>>> 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/groups/opt_out.
>



-- 
Cheers,
√

*Viktor Klang*
*Concurrent, Distributed*

Twitter: @viktorklang

-- 
>>>>>>>>>>      Read the docs: http://akka.io/docs/
>>>>>>>>>>      Check the FAQ: http://akka.io/faq/
>>>>>>>>>>      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/groups/opt_out.

Reply via email to