吞吐:表示单位时间可以处理多少事件。可用来衡量系统的处理速度。但要注意,处理速度还取决于数据到来速度,因此,吞吐低不一定意味着系统性能差。在流处理应用中,通常希望系统有能力应对以最大速度到来的事件,即系统满负载时的性能上限(峰值吞吐)。实际生产中,一旦事件到达速度过高导致系统处理不过来,系统就会被迫开始缓冲事件。若此时系统吞吐已到极限,再提高事件到达速度只会让延迟更大。如果系统还继续以力不能及的高速度接收事件,那么缓冲区可能会用尽。这种情况通常被称为背压(backpressure),我们有多种可选策略来处理它。flink系列后续会有文章重点介绍这块。
参考资料[1] [Fabian Hueske & Vasiliki Kalavri 著,崔星灿 译;基于Apache Flink的流处理(Stream Processing with Apache Flink);中国电力出版社,2020]
[2] Apache Flink Documentation v1.11