
在工作中我们一般使用IntelliJIDEA开发工具进行代码开发,为了能方便快速的调试Flink和了解Flink程序的运行情况,我们希望本地开发工具中运行Fl
腾讯云 2023-04-09 23:13:10
【资料图】
在工作中我们一般使用IntelliJ IDEA开发工具进行代码开发,为了能方便快速的调试Flink和了解Flink程序的运行情况,我们希望本地开发工具中运行Flink时能查看到WebUI,这就可以在编写Flink程序时开启本地WebUI。
在Flink1.15版本之前根据使用Scala版本在Java Flink项目或Scala Flink项目中添加对应Scala版本的依赖。
org.apache.flink flink-runtime-web_${scala.binary.version} ${flink.version}
在Flink1.15版本之后,无论是Java Flink项目还是Scala Flink项目,添加如下依赖,不需额外依赖Scala版本。
org.apache.flink flink-runtime-web ${flink.version}
Flink Java 代码启动本地WebUI:
Configuration conf = new Configuration();//设置WebUI绑定的本地端口conf.setString(RestOptions.BIND_PORT,"8081");//使用配置StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(conf);
Flink Scala 代码启动本地WebUI:
val configuration = new Configuration()//设置WebUI绑定的本地端口configuration.set(RestOptions.BIND_PORT,"8081")//使用配置val env: StreamExecutionEnvironment = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(configuration)
Java 代码示例:
//1.使用本地模式Configuration conf = new Configuration();//设置WebUI绑定的本地端口conf.setString(RestOptions.BIND_PORT,"8081");//使用配置StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(conf);//2.读取Socket数据DataStreamSource ds = env.socketTextStream("node3", 9999);//3.准备K,V格式数据SingleOutputStreamOperator> tupleDS = ds.flatMap((String line, Collector> out) -> { String[] words = line.split(","); for (String word : words) { out.collect(Tuple2.of(word, 1)); }}).returns(Types.TUPLE(Types.STRING, Types.INT));//4.聚合打印结果tupleDS.keyBy(tp -> tp.f0).sum(1).print();//5.execute触发执行env.execute();
代码运行:
Scala代码示例:
//1.创建本地WebUI环境val configuration = new Configuration()//设置绑定的本地端口configuration.set(RestOptions.BIND_PORT,"80")//第一种设置方式val env: StreamExecutionEnvironment = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(configuration)//2.Scala 流处理导入隐式转换,使用Scala API 时需要隐式转换来推断函数操作后的类型import org.apache.flink.streaming.api.scala._//3.读取Socket数据val linesDS: DataStream[String] = env.socketTextStream("node3", 9999)//4.进行WordCount统计linesDS.flatMap(line=>{line.split(",")}) .map((_,1)) .keyBy(_._1) .sum(1) .print()//5.最后使用execute 方法触发执行env.execute()
以上代码启动任意一个都可以通过访问:http://localhost来查看WebUI。
注意:启动代码之前在node3首选启动Socket服务,然后再启动代码。在导入flink-runtime-web依赖之后最好重启开发工具,重新加载对应的依赖包,否则可能执行代码之后访问本地WebUI时出现"{"errors":["Not found: /"]}"错误,访问不到WebUI情况。
在工作中我们一般使用IntelliJIDEA开发工具进行代码开发,为了能方便快速的调试Flink和了解Flink程序的运行情况,我们希望本地开发工具中运行Fl
今天小编肥嘟来为大家解答以上的问题。最粘人的猫咪网红,最粘人的猫相信很多小伙伴还不知道,现在让我们一起来看看吧!1、异国短毛猫吧,异短
优点太多,无从评述。只说一点,无名者叶秘在香港的一段刻画太撼动人心!无亲无友、无依无援,只有坚定的信仰和一腔孤勇,新世界是他们血肉灵
辽宁队资讯速递,3大名帅祝福篮坛教父,杨毅摊牌了,大韩不退役,杨毅,杨鸣,辽宁队,蒋兴权,韩德君,北京首钢
白岩松评农村房前屋后禁种蔬菜今天的热度非常高,现在也是在热搜榜上了,那么具体的白岩松评农村房前屋后禁种蔬菜是什么情况呢,
本报北京4月8日电(记者林丽鹂)国家市场监督管理总局4月7日召开新闻发布会,解读市场监管总局(国家标准委)近日批准发布的《快递电子运单》
数据来源:国家邮政局 制图:汪哲平本报北京4月8日电(记者韩鑫)39天超100亿件,67天超200亿件,96天超300亿件!国家邮政局监测数据显示,截
据路透社,美国加利福尼亚州一名特斯拉车主当地时间4月7日在一项潜在的集体诉讼中起诉了特斯拉,指控其侵犯客户隐私。此前有消
“旗帜”超级架构下第三大平台——红旗混动平台HMP正式登场中国作为全球第二大新能源汽车市场,正以规模和质量的双提升重塑全球汽车产业发展格
作为东亚地区的工强国,过去30年,日本的发电量一直保持在1万亿度左右浮动。有些年份,日本的发电量还呈现负增长的趋势。另一厢,中国的发电量
1、这是一个可以展开使用的婴儿车,如图。2、找到婴儿车推把上的折叠按钮,朝正确的方向推。3、找到折叠按钮后启动折叠模式,
1、 我给你分析下,但无法给你拿意见,怎么决定还看你自己首先,她因为一个外地的开出租车的就背叛你,羞辱了你,你应该看清
为坚决筑牢医保基金安全屏障,营造全社会关注并自觉维护医保基金安全的良好氛围,根据国、省局有关要求,4月,湘潭市医保局启动
大家好,小太来为大家解答以上问题。美媒:马斯克本周末将访问中国很多人还不知道,现在让我们一起来看看吧!1、大家好,小太来为大家解答
今日(4月8日),NordicTrolls工作室发布程序生成PCG开放世界多人生存建造游戏《UnderaRock》实机演示,在视频中,他们展示了玩家可以使用的几