任务假设:
   任务从kafka读取数据,经过若干复杂处理(process、window、join、等等),然后sink到kafka。
   并发最高240(kafka分区数),当前采用全部算子相同并发方式部署。
   算子间存在 hash、forward、rebalance 等分区情况。
   此处假设 A 和 B 算子之间是 rebalance。 C 和 D 算子直接是 hash 分区(无数据倾斜)。ABCD都是240并发。 其他算子暂忽略。

TM连接数:
   Flink 的 taskmanager 之间的共享 tcp 连接。因此虽然A到B、C到D之间都是全连接,但实际增加的是result
sub partition数,不会导致tcp连接不断增。
   我们单个TM只提供1个slot的情况下,每个算子都是240并发,所以tm之间的tcp连接是不是可以大概认为是 240 * 239 ?

task间result sub partition:
   task之间的result sub partition太多会有啥影响呢?主要考虑性能影响。是否可能增大 partition not found 的概率呢?

回复