我知道任务管理器可能有几个任务槽。
但是,什么是任务槽? JVM进程或内存或线程中的对象?
答案 0 :(得分:1)
答案可能来晚了。但是:
Taskmanager(TM)是JVM进程,而Taskslot(TS)是相应的JVM进程(TM)中的线程。 TM的托管内存在TM内的TS之间平均分配。插槽之间没有发生CPU隔离,只划分了托管内存。 此外,同一TM中的TS共享TCP连接(通过多路复用)和心跳消息。他们还可以共享数据集和数据结构,从而减少每个任务的开销。
答案 1 :(得分:1)
每个工作程序(TaskManager)是一个JVM进程,并且可以在单独的线程中执行一个或多个子任务。为了控制一个工人接受多少个任务,一个工人有一个所谓的任务槽(至少一个)。
答案 2 :(得分:0)
@Janukowitsch的回答很好。 另外,TS代表TM的资源的固定子集。一个TS可以占用 1个以上线程。实际上,一个线程执行一个子任务/任务。多个子任务/任务可以部署在同一插槽中。
答案 3 :(得分:-1)
插槽数通常与每个TaskManager的可用CPU核心数成比例。作为一般建议,taskmanager.numberOfTaskSlots的可用CPU核心数是一个很好的默认值。