flink选择slot

flink选择slotflink选择slot_第1张图片

flink选择slot_第2张图片
flink选择slot_第3张图片

在这个类里修改

package org.apache.flink.runtime.resourcemanager.slotmanager.SlotManagerImpl;

findMatchingSlot(resourceProfile):找到满足要求的slot(负责从哪个taskmanager中获取slot)对应上图第8,9,10部
allocateSlot(taskManagerSlot, pendingSlotRequest):向resourcemanager注册,并将任务submit

flink选择slot_第4张图片

flink选择slot_第5张图片
该方法从freeslot中找到一个合适的slot,并将相应的taskmanagerSlot放入Optionl容器中,返回,之后注册,再将任务submit,

  • freeslot中的15个槽,顺序是 (120:1) (120:2) (120:3) (120:4) (120:5)(121:1) (121:2) (121:3) (121:4) (121:5)(122:1) (122:2) (122:3) (122:4) (122:5) 默认是按顺序使用槽,但可以根据需要改
    freeslotnums 用来记住使用了几个槽

你可能感兴趣的:(java,flink)