[
https://issues.apache.org/jira/browse/BOOKKEEPER-70?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13242243#comment-13242243
]
Ivan Kelly commented on BOOKKEEPER-70:
--------------------------------------
I've spoken with Utkarsh about this before, and he said that the reason to have
1 connection per subscription was that it meant that it made flow control
easier. If a client doesn't want to process any more messages for a
subscription, it can just set the connection as read only, and this will not
effect the other subscriptions on the client. Basically, it's taking advantage
of windowing in TCP. With window size W, the server will only send W bytes to
the client before expecting a response and blocking all other sends. By setting
the connection to readonly, we're basically saying "don't send any more acks".
We actually already have a very similar mechanism to this with consume. The
server could be configured to only send X messages for a subscription without
receiving a consume message. I think this would achieve the same effect.
> reduce or demultiplex subscription connections to a hub server
> --------------------------------------------------------------
>
> Key: BOOKKEEPER-70
> URL: https://issues.apache.org/jira/browse/BOOKKEEPER-70
> Project: Bookkeeper
> Issue Type: Improvement
> Components: hedwig-client, hedwig-server
> Reporter: Sijie Guo
>
> now each subscription will establish a connection to hub server, there will
> be too many connections on both client/server sides.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira