On Monday, January 30, 2017 at 4:29:13 PM UTC+2, Patrik Nordwall wrote:
>
>
> It's sent to one random node per tick, not all nodes.
>
 
Node per tick, you're right ...
 

> The reason for sending all digests is to be able to find entries that are 
> not the same. Remember that message delivery is at-most-once and there is 
> no redelivery and acking here to make it anything else. Also new nodes 
> joining the cluster need to sync up.
>
 
It's possible to get all changed entries based on local node knowledge of 
all key entries that were changed. The code does it for "subscribe for 
changes" mechanism. 
As I understand, the idempotent nature assumes that more-than-once will not 
break anything, even if the replication message will be sent twice.
Commutative requirement promises non sequential "merges" of states.
  
I'll happy to understand the reason for the round-trip of the whole set of 
all digests. I didn't find any specific "strict" requirements for the 
consistency of the replication flow and transport method.  
So, why just not to send instances of dataEntries map that were changed 
recently, without all digests round-trip and differences detection?


How large are your Status messages (with the digests)? You can reduce the 
> chunk size or increase the tick interval, at the cost of longer 
> dissemination times.
>

In our application, very low percentage of instances get updated each tick 
time period, but with a very high rate. The total number of CRDT type 
instances in the system may reach hundreds of thousands (at the moment). 
I'm trying to improve the behavior and eliminate "all keys/digests round 
trip" to "changed keys" only. This is prior to any delta improvements, that 
look even more promising...
I can use different consistency level like write majority to improve this, 
but the performance will suffer, and many unneeded replications will be 
fired for every "Update" ...

I would appreciate any ideas.

Vadim Punski

>

-- 
>>>>>>>>>>      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 akka-user+unsubscr...@googlegroups.com.
To post to this group, send email to akka-user@googlegroups.com.
Visit this group at https://groups.google.com/group/akka-user.
For more options, visit https://groups.google.com/d/optout.

Reply via email to