写点什么

Flink1,java 从入门到精通第四版 pdf 下载

用户头像
极客good
关注
发布于: 刚刚

IDEA 上运行 flink job 工程

  1. 在 IDEA 上创建 flink job 的 maven 工程并运行,请参考《IDEA上运行Flink任务》

  2. 假设您已按上面的步骤在 IDEA 建好了 flink job 工程;

  3. 运行起来,在浏览器打开 flink 页面,如下图,绿框中显示一共有 8 个 Task Slot:



  1. 之所以会有 8 个 Task Slot,和下图红框中的代码有关,这是段 flink 框架源码(StreamExecutionEnvironment.java),入参 parallelism 是 CPU 核数,我这里是开了超线程的四核 i5 处理器,所以 parallelism 等于 8:


![在这里插入图片描述](https://img-blog.csdnimg.cn/20200411213153170.png?x-oss-process=image/watermark,type_ZmFuZ3poZW5naGVpdGk,s


【一线大厂Java面试题解析+核心总结学习笔记+最新架构讲解视频+实战项目源码讲义】
浏览器打开:qq.cn.hn/FTf 免费领取
复制代码


hadow_10,text_aHR0cHM6Ly9ibG9nLmNzZG4ubmV0L2JvbGluZ19jYXZhbHJ5,size_16,color_FFFFFF,t_70)


  1. 今天的目标就是修改上图红框中的源码,然后在网页上看是不是生效了(Task Slot 数量从 8 改成 5);

准备工作

  1. maven 中央仓库地址建议用阿里云的,否则会经常遇到 jar 下载超时错误,地址:http://192.168.50.43:8081/repository/aliyun-proxy/

  2. flink1.9.2 源码的 maven 工程依赖了一个中央仓库没有的 jar,GAV 是 io.confluent:kafka-schema-registry-client:3.3.1,您需要下载下来在本地仓库做 mvn install 操作,下载地址:http://packages.confluent.io/maven/io/confluent/kafka-schema-registry-client/3.3.1/kafka-schema-registry-client-3.3.1.jar

  3. 上述准备工作都需要您在本地 maven 上操作,但是如果您的条件允许,还是强烈推荐在内网搭建 maven 私服 nexus3,参考:《群晖DS218+做maven私服(nexus3)》《Ubuntu部署和体验Nexus3》《Nexus3常用功能备忘》

下载 flink1.9.2 源码

flink1.9.2 源码的下载地址:http://ftp.jaist.ac.jp/pub/apache/flink/flink-1.9.2/flink-1.9.2-src.tgz

修改和编译构建

  1. 将下载好的 flink-1.9.2-src.tgz 解压,得到文件夹 flink-1.9.2

  2. 打开这个文件:flink-1.9.2/flink-streaming-java/src/main/java/org/apache/flink/streaming/api/environment/StreamExecutionEnvironment.java

  3. 如下图红框,找到 createLocalEnvironment 方法,把 setParallelism 的入参改成一个固定的数字(每个 Task Slot 都要分配内存,所以这个数字请不要改得太大,否则启动 flink 就会报错了,我这里改成了 5):



  1. 在文件夹 flink-1.9.2 下,执行编译构建的命令:mvn clean install -DskipTests -Dfast

  2. 经历漫长等待后提示构建成功:



  1. 确认这个文件已生成,稍后就要用到:flink-1.9.2/flink-dist/target/flink-dist_2.11-1.9.2.jar

设置

  1. 为了用上刚刚构建出来的 flink 框架 jar,要做些设置,打开之前运行的 flink job 应用,在项目上点击右键,点击菜单 Open Module Settings,如下图:



  1. 接下来要做三个和 jar 有关的操作,注意每一步都很重要:

  2. 下图红框 1 中的 flink-dist_2.11-1.9.2.jar 文件,是《IDEA上运行Flink任务》一文中添加的,目的是提供网页服务,现在将其删除,操作如下图红框所示:



  1. 下图红框 1 中的 maven 依赖:org.apache.flink:flink-streaming-java_2.11:1.9.2,也请删除,操作如下图红框所示:



  1. 点击下图红框中的加号:



  1. 在弹出的窗口选中刚才构建好的文件 flink-1.9.2/flink-dist/target/flink-dist_2.11-1.9.2.jar:



  1. 记得点击右下角的 OK 按钮保存,修改完毕,接下来验证咱们修改的 flink 框架源码是否生效了

验证

  1. 当前 flink job 工程来自《IDEA上运行Flink任务》一文,StreamingJob 的工作是读取本机 18081 端口的数据,所以我们要把 18081 端口的服务启动起来,不然 StreamingJob 运行时是连不上端口的,打开一个控制台,执行命令:nc -l 18081

  2. 现在可以将 StreamingJob 运行起来,如下图,右键点击 StreamingJob,选择 Run ‘StreamingJob.main()’:即可启动 flink 任务:

用户头像

极客good

关注

还未添加个人签名 2021.03.18 加入

还未添加个人简介

评论

发布
暂无评论
Flink1,java从入门到精通第四版pdf下载