Hey,

    I decided to use Akka actors to do some parallel processing (primarily 
file downloading and database insertion/updating). The original design of 
the program follows a sequential line: START -> Download Files, generate 
half of database entry -> Access a http link, complete the rest half of 
database entry -> Store the database Entry.

    It works nicely but it takes a long time and I have 1000 files to 
download. Then when I try to do this in Akka, my head spins. First, Akka 
discourages passing mutable messages. If I construct the database entry as 
a case class, and pass it around, letting other actors completing its 
fields, is this a mutable message? Should I avoid it? Second, I found it 
was very easy to do sequential programming in Akka framework. You just 
construct an actor hierarchy and pass message when the actor is done 
processing. However, I in general dislike this sequential construct. So I 
came up with this design:

             JobDelegator (system actor)     

DownloadActor  DatabaseActor  HTTPActor (context actor that gets 
constructed under JobDelegator)

    So now I feel a little bit more comfortable, but still, I didn't solve 
the database entry problem, and this tree structure only has one level, 
which in the case of fault tolerance, it's very low. 

    How do people solve the insertion to the database (transaction) problem 
in Akka? How should I design this simple program?

-- 
>>>>>>>>>>      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