Hi, 

Some context 

We are working on a public accessible web application (openoox.com). At the 
moment the application run on play 2.3.6 and akka 2.3.6

We have implemented sharding in our application to distribute the load of 
some user actions throughout our cluster. At the moment cluster sharding is 
the only thing we use which depends on akka persistence. 
Our application uses mongodb as its main datastore, and when implementing 
the sharding prototype we 
used https://github.com/ironfish/akka-persistence-mongo to get a shared 
journal.

Using mongodb as a journal store doesn't seem to be the best option but we 
don't really have the time to setup an alternate store at the moment. We 
will probably do so as we start moving business actors to an akka 
persistence implementation. 

One last point to note is we use a rolling deployment configuration where 
"new" and "old" servers live and communicate together for about 30 minutes 
before the old servers are taken down.Which means that akka nodes with the 
new and old configuration live in the same cluster for a while. 

The questions 
 
- Is there anything to help us migrate the existing Cluster sharding 
 events to the new store ? It isn't clear to us how we will be able to do 
the migration ... our understanding of the documentation is that an actor 
system can only have one backing store for akka persistence. 
This means a migration plan would probably require creating another actor 
system with the new backing store, implementing a custom persistent actor 
in both actor systems using the same persistence id as our shard 
coordinators and forward the recovered events from the actor backed by the 
old store to the actor backed with the new store. I think we should also 
delay shard startup until the migration is over, would that be enough not 
to loose events ?
 
- In the event we are unable to migrate the events, what would the 
consequences be for the sharded cluster ? More specifically would the nodes 
backed by the new store sill be able to process their shards or should we 
plan downtime for the website while we do the migration ?

Does anyone have experience with these kind of problems ? Should we avoid 
migration entirely and delay the deployment of sharding until we have time 
to setup a more appropriate store for akka persistence ?

We would welcome insight before we take time to experiment ... 

Thanks
Jean

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