Hi Averell, There is no general answer to your question. If you are running more TMs, you get better isolation between different Flink jobs because one TM is backed by one JVM [1]. However, every TMs brings additional overhead (heartbeating, running more threads, etc.) [1]. It also depends on the maximum heap memory requirements of your operators. Data skew and non-parallel operators can cause uneven memory requirements.
For capacity planning, you can also take a look at Robert Metzger's slides [2]. Best, Gary [1] https://ci.apache.org/projects/flink/flink-docs-stable/concepts/runtime.html#task-slots-and-resources [2] https://www.slideshare.net/FlinkForward/flink-forward-berlin-2017-robert-metzger-keep-it-going-how-to-reliably-and-efficiently-operate-apache-flink On Thu, Sep 20, 2018 at 1:13 AM Averell <lvhu...@gmail.com> wrote: > Hi Gary, > Thanks for your help. > > Regarding TM configurations, in term of performance, when my 2 servers have > 16 vcores each, should I have 2 TMs with 16GB mem, 16 task slots each, or 8 > TMs with 4GB mem and 4 task slots each? > > Thanks and regards, > Averell > > > > -- > Sent from: > http://apache-flink-user-mailing-list-archive.2336050.n4.nabble.com/ >