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