• 5、Flink本地模式添加web页面


    将flink提交到集群中运行,可以看到job的的执行计划、占用的资源情况、Task的数量和并行度、内存、checkpoint等信息。但是将必须先job打成jar包,然后通过web页面或命令行提交到集群中执行。

    但是在开发测试时,想要看到job的执行计划和运行时的一些信息,就需要每一次都将程序打包并提交到集群中运行,这样就很麻烦。如果能在IEDA或Eclipse中本地运行时,也可以有一个web页面,那就更方便了!flink本身就支持local模式运行,并且local模式也可以有webui页面,只不过要添加一个maven的依赖即可。

    1. 第一步:在pom文件中添加依赖
    <!-- web ui的依赖-->
    <dependency>
        <groupId>org.apache.flink</groupId>
        <artifactId>flink-runtime-web_${scala.binary.version}</artifactId>
        <version>${flink.version}</version>
    </dependency>


    2. 第二部:创建local并且带ui的LocalEnvironmentWithWebUI

    package cn._51doit.flink;
    
    import org.apache.flink.configuration.Configuration;
    import org.apache.flink.streaming.api.datastream.DataStreamSource;
    import org.apache.flink.streaming.api.environment.StreamExecutionEnvironment;
    
    public class FromCollectionDemo {
        public static void main(String[] args) throws Exception {
            StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(new Configuration());
    
            DataStreamSource<String> localhost = env.socketTextStream("cs-28-86", 8888);
    
            localhost.print();
    
            env.execute();
    
        }
    }


    3.在IDEA中运行程序,然后使用浏览器访问localhost:8081

    image


    web的rest端口号默认是8081,如果想改变端口号,可以在configuration中添加如下配置即可:

    Configuration configuration = new Configuration();
    configuration.setInteger(“rest.port”, 8082);
    StreamExecutionEnvironment env = StreamExecutionEnvironment.createLocalEnvironmentWithWebUI(configuration);


    重启后用浏览器访问localhost:8082即可,就可以看到job的运行的信息了!

  • 相关阅读:
    Python函数式编程(一):高级函数
    Python高级特性:列表生成式
    Python高级特性:迭代
    Python高级特性:切片
    Python学习笔记
    关于相机拍照获取图片onActivityResult返回data 为null的问题
    191019
    状语和状语从句
    191018
    191017
  • 原文地址:https://www.cnblogs.com/weiyiming007/p/15850073.html
Copyright © 2020-2023  润新知