
# 配置Flink任务进程参数
#### 操作场景
Flink on YARN模式下，有JobManager和TaskManager两种进程。在任务调度和运行的过程中，JobManager和TaskManager承担了很大的责任。
因而JobManager和TaskManager的参数配置对Flink应用的执行有着很大的影响，用户可通过如下操作对Flink集群性能做优化。
#### 操作步骤
1. 配置JobManager内存。 
   JobManager负责任务的调度，以及TaskManager、RM之间的消息通信。当任务数变多，任务并行度增大时，JobManager内存都需要相应增大。
   您可以根据实际任务数量的多少，为JobManager设置一个合适的内存。
   - 在使用yarn-session命令时，添加"-jm MEM"参数设置内存。
   
   - 在使用yarn-cluster命令时，添加"-yjm MEM"参数设置内存。
   
   
   
   
2. 配置TaskManager个数。 
   每个TaskManager每个核同时能跑一个task，所以增加了TaskManager的个数相当于增大了任务的并发度。在资源充足的情况下，可以相应增加TaskManager的个数，以提高运行效率。
   
   
3. 配置TaskManager Slot数。 
   每个TaskManager多个核同时能跑多个task，相当于增大了任务的并发度。但是由于所有核共用TaskManager的内存，所以要在内存和核数之间做好平衡。
   - 在使用yarn-session命令时，添加"-s NUM"参数设置SLOT数。
   
   - 在使用yarn-cluster命令时，添加"-ys NUM"参数设置SLOT数。
   
   
   
   
4. 配置TaskManager内存。 
   TaskManager的内存主要用于任务执行、通信等。当一个任务很大的时候，可能需要较多资源，因而内存也可以做相应的增加。
   - 在使用yarn-session命令时，添加"-tm MEM"参数设置内存。
   
   - 在使用yarn-cluster命令时，添加"-ytm MEM"参数设置内存。
   
   
   
   
 
