0
点赞
收藏
分享

微信扫一扫

flink源码学习之程序起点

大柚子top 2022-03-31 阅读 43

1.1 程序起点

1)flink\bin\flink
=> exec $JAVA_RUN $JVM_ARGS "${log_setting[@]}" -classpath "​​manglePathList "$CC_CLASSPATH:$INTERNAL_HADOOP_CLASSPATHS"​​" org.apache.flink.client.cli.CliFrontend "$@"

2)flink/bin/config.sh(相关环境配置都在这里)
=> JAVA_RUN=java
=> JVM_ARGS="" => # Use conf/flink-conf.yaml
=>INTERNAL_HADOOP_CLASSPATHS="${HADOOP_CLASSPATH}:${HADOOP_CONF_DIR}:${YARN_CONF_DIR}"
3)执行java -cp 就会开启JVM虚拟机,在虚拟机上开启CliFrontend进程,然后开始执行main方法
说明:java -cp和 -classpath一样,是指定类运行所依赖其他类的路径。
java -cp =》开启JVM虚拟机 =》开启Process(CliFrontend)=》程序入口CliFrontend.main
9)Flink提交任务的入口类为CliFrontend。找到这个类的main方法:
在IDEA中全局查找(ctrl + n):org.apache.flink.client.cli.CliFrontend,找到CliFrontend类,并找到main方法

/**
* Submits the job based on the arguments.(根据参数提交作业)
*/
public static void main(final String[] args) {
... ...
final CliFrontend cli = new CliFrontend(
configuration,
customCommandLines);
... ...
}
举报

相关推荐

0 条评论