[ 
https://issues.apache.org/jira/browse/CASSANDRA-11351?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=15194444#comment-15194444
 ] 

Paulo Motta commented on CASSANDRA-11351:
-----------------------------------------

Is this a duplicate of CASSANDRA-11303 ? The idea there is to add 
{{stream_throughput_inbound_megabits_per_sec}} and 
{{inter_dc_stream_throughput_inbound_megabits_per_sec}} and throttle reading 
from socket on the receiving side (analogous to what we currently do for 
outbound throttling). If outbound > inbound, tcp receive buffer would fill and 
write side would dynamically adjust to inbound consume throughput. Would that 
be sufficient or is there any problem with this approach?

> rethink stream throttling logic
> -------------------------------
>
>                 Key: CASSANDRA-11351
>                 URL: https://issues.apache.org/jira/browse/CASSANDRA-11351
>             Project: Cassandra
>          Issue Type: Improvement
>            Reporter: Brandon Williams
>
> Currently, we throttle steaming from the outbound side, because throttling 
> from the inbound side is thought as not doable.  This creates a problem 
> because the total stream throughput is based on the number of nodes involved, 
> so based on the operation to be performed it can vary.  This creates 
> operational overhead, as the throttle has to be constantly adjusted.
> I propose we flip this logic on its head, and instead limit the total inbound 
> throughput.  How?  It's simple: we ask.  Given a total inbound throughput of 
> 200Mb, if a node is going to stream from 10 nodes, it would simply tell the 
> source nodes to only stream at 20Mb/s when asking for the stream, thereby 
> never going over the 200Mb inbound limit.



--
This message was sent by Atlassian JIRA
(v6.3.4#6332)

Reply via email to