[jboss-jira] [JBoss JIRA] (JGRP-1317) STABLE: compress STABLE messages
Bela Ban (JIRA)
jira-events at lists.jboss.org
Wed Aug 28 03:42:26 EDT 2013
[ https://issues.jboss.org/browse/JGRP-1317?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12799767#comment-12799767 ]
Bela Ban commented on JGRP-1317:
--------------------------------
To reduce memory consumption even more, we could only store the view and HD/HR seqno pairs in Digest:
{noformat}
View view;
long[] seqnos;
{noformat}
The view is stored when a digest is created. The seqnos contains the seqno pairs, e.g. 20:20, 15:20, 0:0 in the example above.
This already has benefits for JoinRsp and MergeData (and others): both have a View and a Digest field. The Digest.view would simply point to the view field. Digest.view would have to be set when a Digest is unmarshalled, e.g. received over the network. The advantage is that we're storing the membership list only *once*.
Also, in STABLE, if we make Digest.view refer to the current view, then we can have as many digests as we want, but the membership is stored only once.
> STABLE: compress STABLE messages
> --------------------------------
>
> Key: JGRP-1317
> URL: https://issues.jboss.org/browse/JGRP-1317
> Project: JGroups
> Issue Type: Feature Request
> Reporter: Bela Ban
> Assignee: Bela Ban
> Fix For: 3.4
>
>
> For large clusters, STABLE messages are quite large, and should be compressed to be sent over the wire.
> STABLE messages are sent between members in the same view, so we could only send the ViewId + highest_delivered/highest_received seqnos.
> Everybody who receives a STABLE message grabs the View associated with the ViewId (should be the current view !) and creates a Digest based on the View and the long[] array.
> Further optimization:
> - Canonicalize digests: if everyone has (14) 20, 22, then we could write it once, give it an ID of (say) 1 and then only refer to 1 again if we encounter the same digest. Actually, as a matter of fact, most of the digests would be the same, so this optimization could have a big effect !
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
More information about the jboss-jira
mailing list