flink的实现流数据

linux环境下部署flink实现流数据实时更新

1、linux系统准备

  1. jdk1.8
  2. 解压flink
    tar -zxvf 你的flink的压缩包路径
  3. 修改配置
    设置conf下的ymal文件的并行度设置为4
  4. 启动
    进入到bin的目录下启动:
    ./start-cluster.sh
  5. 访问 :http://192.168.201.129:8081/
  6. 访问不了,关闭下防火墙先

2、Java代码

打包你的项目:maven-package,会生成一个war文件(ip地址用你的linux地址)

public static void main(String[] args) throws Exception {
        StreamExecutionEnvironment executionEnvironment=StreamExecutionEnvironment.getExecutionEnvironment();

        //数据集
        DataStreamSource<String> dataStreamSource =
                executionEnvironment.socketTextStream("192.168.201.129",7777);

        //基于数据流进行转换计算
        DataStream<Tuple2<String,Integer>> dataStream=dataStreamSource.flatMap(new WordCount.MyFlatMapper())
                .keyBy(0)
                .sum(1)
                .setParallelism(2);//并行个数
        dataStream.print().setParallelism(1);
        executionEnvironment.execute();
    }

3、启动一个不停发送数据的端口

linux下运行:nc -lk 7777

4、flink上传测试

启动就是这样的

  1. 上传war

    点击目录下的submit new job,选中你的项目下的war包(在target下)

  2. 参数设置
    项目中有多个class,怎么指定是那个主程序呢,看图就明白了(ip地址是你的linux下的地址),设置完成后,提交submit

    参数设置

5、发送数据

就是在7777的目录下随便输入东西,这样在你的flink界面就可以看到数据刷新,一直输入,数据会实时刷新!

flink流数据

相关文章

Flink-core小总结1.实时计算和离线计算1.1离线计算离线计算的...
2022年7月26日,Taier1.2版本正式发布!本次版本发布更新功能...
关于Flink相关的概念性东西就不说了,网上都有,官网也很详尽...
最近准备用flink对之前项目进行重构,这是一个有挑战(但我很...
Thispostoriginallyappearedonthe ApacheFlinkblog.Itwasre...
Flink配置文件对于管理员来说,差不多经常调整的就只有conf下...