springboot内嵌flink并对外部的flink组成集群

时间: 2023-12-06 19:36:05 浏览: 40
根据提供的引用内容,我们可以了解到Spring Boot是一个用于创建基于Spring的独立应用程序的框架,而Apache Flink是一个流处理框架。在Spring Boot中内嵌Flink可以让我们更方便地使用Flink进行流处理。同时,我们也可以将内嵌的Flink与外部的Flink集群进行整合,以便更好地利用Flink的分布式计算能力。 以下是实现Spring Boot内嵌Flink并对外部Flink集群进行整合的步骤: 1.在Spring Boot项目中添加Flink的依赖,例如: ```xml <dependency> <groupId>org.apache.flink</groupId> <artifactId>flink-streaming-java_2.11</artifactId> <version>1.12.2</version> </dependency> ``` 2.在Spring Boot项目中创建Flink的执行环境,例如: ```java StreamExecutionEnvironment env = StreamExecutionEnvironment.getExecutionEnvironment(); ``` 3.在Spring Boot项目中编写Flink的处理逻辑,例如: ```java DataStream<String> text = env.socketTextStream("localhost", 9999); DataStream<Integer> parsed = text.map(Integer::valueOf);DataStream<Integer> result = parsed.keyBy(x -> x % 10).sum(1); result.print(); ``` 4.将Spring Boot项目打包成jar包,并在外部Flink集群中运行,例如: ```shell ./bin/flink run -c com.example.demo.Application /path/to/demo.jar ``` 5.在外部Flink集群中启动一个SocketTextStreamSource,例如: ```java DataStream<String> text = env.socketTextStream("localhost", 9999); ``` 6.在外部Flink集群中将SocketTextStreamSource与Spring Boot项目中的处理逻辑进行整合,例如: ```java DataStream<Integer> parsed = text.map(Integer::valueOf); DataStream<Integer> result = parsed.keyBy(x -> x % 10).sum(1); result.print(); ``` 7.启动外部Flink集群,例如: ```shell ./bin/start-cluster.sh ``` 8.启动SocketTextStreamSource,例如: ```shell ./bin/flink run -c org.apache.flink.streaming.examples.socket.SocketTextStreamWordCount /path/to/examples/streaming/SocketTextStreamWordCount.jar --port 9999 ``` 通过以上步骤,我们就可以实现Spring Boot内嵌Flink并对外部Flink集群进行整合了。

相关推荐

最新推荐

recommend-type

Flink +hudi+presto 流程图.docx

Flink +hudi+presto 流程图.docx 自己实现后画的一个流程图,便于理解
recommend-type

Flink实用教程_预览版_v1.pdf

第1 章Flink 架构与集群安装...............................................................................................................................- 1 - 1. 1 Flink 简介.............................
recommend-type

大数据之flink教程-TableAPI和SQL.pdf

1.1 什么是 Table API 和 Flink SQL 2 1.2 需要引入的依赖 2 1.3 两种 planner(old & blink)的区别 4 第二章 API 调用 5 2.1 基本程序结构 5 2.2 创建表环境 5 2.3 在 Catalog 中注册表 7 2.3.1 表(Table)的概念...
recommend-type

Flink基础讲义.docx

第三章 Flink集群搭建 12 第四章 DataSet开发 48 第五章 DataStream开发 111 第六章 Window 157 第七章 EventTime-Watermark(难点) 175 第八章 Flink的状态管理 200 第九章 Flink的容错 226 第1种:全局调整 235 第2...
recommend-type

基于Flink构建实时数据仓库.docx

基于Flink SQL的扩展工作,构建实时数仓的应用案例,未来工作的思考和展望4个方面介绍了OPPO基于Flink构建实时数仓的经验和未来的规划。
recommend-type

zigbee-cluster-library-specification

最新的zigbee-cluster-library-specification说明文档。
recommend-type

管理建模和仿真的文件

管理Boualem Benatallah引用此版本:布阿利姆·贝纳塔拉。管理建模和仿真。约瑟夫-傅立叶大学-格勒诺布尔第一大学,1996年。法语。NNT:电话:00345357HAL ID:电话:00345357https://theses.hal.science/tel-003453572008年12月9日提交HAL是一个多学科的开放存取档案馆,用于存放和传播科学研究论文,无论它们是否被公开。论文可以来自法国或国外的教学和研究机构,也可以来自公共或私人研究中心。L’archive ouverte pluridisciplinaire
recommend-type

实现实时数据湖架构:Kafka与Hive集成

![实现实时数据湖架构:Kafka与Hive集成](https://img-blog.csdnimg.cn/img_convert/10eb2e6972b3b6086286fc64c0b3ee41.jpeg) # 1. 实时数据湖架构概述** 实时数据湖是一种现代数据管理架构,它允许企业以低延迟的方式收集、存储和处理大量数据。与传统数据仓库不同,实时数据湖不依赖于预先定义的模式,而是采用灵活的架构,可以处理各种数据类型和格式。这种架构为企业提供了以下优势: - **实时洞察:**实时数据湖允许企业访问最新的数据,从而做出更明智的决策。 - **数据民主化:**实时数据湖使各种利益相关者都可
recommend-type

list根据id查询pid 然后依次获取到所有的子节点数据

可以使用递归的方式来实现根据id查询pid并获取所有子节点数据。具体实现可以参考以下代码: ``` def get_children_nodes(nodes, parent_id): children = [] for node in nodes: if node['pid'] == parent_id: node['children'] = get_children_nodes(nodes, node['id']) children.append(node) return children # 测试数
recommend-type

JSBSim Reference Manual

JSBSim参考手册,其中包含JSBSim简介,JSBSim配置文件xml的编写语法,编程手册以及一些应用实例等。其中有部分内容还没有写完,估计有生之年很难看到完整版了,但是内容还是很有参考价值的。