我的团队正在对Flink的一些用例进行评估,在这些用例中,我们正在研究大量的处理组,希望保持资源隔离。 在单个集群中运行成千上万的工作时,人们是否会遇到重大的陷阱/瓶颈?
到目前为止,我们已经注意到JobManager在执行几百个作业后似乎会显着降低速度,建议here是将单个大型集群拆分为多个较小的集群。是最好的推荐方法,还是有办法让Flink在大量Jobs中可靠运行?
答案 0 :(得分:1)
每个集群一个作业可能是一个吸引人的方法,但是当然,如果这些作业是短暂的,那么不幸的是,为每个作业启动集群的开销可能会很不幸。这种方法的一个优点是安全性,因为作业可以适当地相互隔离。
朝另一个方向发展,即随着任务管理器和作业数量的增加,在一个集群中运行很多作业,协调集群中的所有检查点活动可能会成为瓶颈(假设启用了检查点)