flink实时规则营销系统(39期,2023版)

鲍二家的
• 阅读 159

学习地址1:https://pan.baidu.com/s/1Hk7bLCh3Gwl4s87f-Hm3XQ 提取码:6dhr 学习地址2:https://share.weiyun.com/cE3EUSA3 密码:chi9p6

flink实时规则营销系统(39期,2023版)——简单来说,本系统核心是一个基于事件驱动且可进行动态规则计算的实时系统,在技术上它是通用的;本套架构及系统内核,不仅可以用于“实时运营”,也可以用于“实时风控”,“实时推荐”,“实时交通监控”等场景。运营场景举例:下单促付款,新品发布信息精准送达。

本系统,在核心规则引擎之外,也集成了大量metric及跟踪数据输出,能在系统中及系统外进行多维度数据分析,以深度掌握各类市场运营活动的效果,以及系统运行的各类状态

什么是flink? flink是一个分布式,高性能,随时可用的以及准确的流处理计算框架,flink可以对无界数据(流处理)和有界数据(批处理)进行有状态计算(flink天生支持状态计算)的分布式,高性能的计算框架。

flink的基石 flink的四大基石:checkpoint,state,time,window checkpoint:基于chandy-lamport算法实现分布式计算任务的一致性语义; state:flink中的状态机制,flink天生支持state,state可以认为程序的中间计算结果或者是历史计算结果; time:flink中支持基于事件时间和处理时间进行计算,spark streaming只能按照process time进行处理; 基于事件时间的计算我们可以解决数据迟到和乱序等问题。 window:flink提供了更多丰富的window,基于时间,基于数量,session window,同样支持滚动和滑动窗口的计算。

Flink的应用 Flink 是一个大数据流处理引擎,它可以为不同的行业提供大数据实时处理的解决方案。随着 Flink 的快速发展完善,如今在世界范围许多公司都可以见到 Flink 的身影。 目前在全球范围内,北美、欧洲和金砖国家均是 Flink 的应用热门区域。当然,这些地区其实也就是 IT、互联网行业较发达的地区。 Flink 在国内热度尤其高,一方面是因为阿里的贡献和带头效应,另一方面也跟中国的应用场景密切相关。中国的人口规模与互联网使用普及程度,决定了对大数据处理的速度要求越来越高,也迫使中国的互联网企业去追逐更高的数据处理效率。试想在中国,一个网站可能要面对数亿的日活用户、每秒数亿次的计算峰值,这对很多国外的公司来说是无法想象的。而Flink 恰好给我们高速准确的处理海量流式数据提供了可能。

Flink环境部署: 要了解一个系统,一般都是从架构开始。我们关心的问题是:系统部署成功后各个节点都启动了哪些服务,各个服务之间又是怎么交互和协调的。 当 Flink 集群启动后,首先会启动一个 JobManger 和一个或多个的 TaskManager。由 Client 提交任务给 JobManager,JobManager 再调度任务到各个 TaskManager 去执行,然后 TaskManager 将心跳和统计信息汇报给 JobManager。TaskManager 之间以流的形式进行数据的传输。上述三者均为独立的 JVM 进程。

Client为提交 Job 的客户端,可以是运行在任何机器上(与 JobManager 环境连通即可)。提交 Job 后,Client 可以结束进程(Streaming的任务),也可以不结束并等待结果返回。

JobManager主要负责调度 Job 并协调 Task 做 checkpoint,职责上很像 Storm 的 Nimbus。从 Client 处接收到 Job 和 JAR 包等资源后,会生成优化后的执行计划,并以 Task 的单元调度到各个 TaskManager 去执行。

TaskManager在启动的时候就设置好了槽位数(Slot),每个 slot 能启动一个 Task,Task 为线程。从 JobManager 处接收需要部署的 Task,部署启动后,与自己的上游建立 Netty 连接,接收数据并处理。

本地模式环境部署步骤如下:

1. 下载安装包并上传到/usr/local/src 目录

2. 解压安装包并重命名为flink

[root@node src]$ tar -zxf flink-1.14.4-bin-scala_2.12.tgz [root@node src]$ tar -zxf jdk-8u111-linux-x64.tar.gz

3. 修改安装包所属用户和用户组权限

[root@node src]$ chown -R root.root flink-1.14.5

4. 配置Flink环境变量并重新加载使其生效

[root@node src]$ vim ~/.bash_profile export JAVA_HOME=/usr/local/src/jdk1.8.0_111/ export FLINK_HOME=/usr/local/src/flink-1.14.5/ export PATH=$PATH:$JAVA_HOME/bin:$FLINK_HOME/bin [root@node src]$ source ~/.bash_profile

4. 启动"集群"

[root@node src]$ start-cluster.sh Starting cluster. Starting standalonesession daemon on host node. Starting taskexecutor daemon on host node. [root@node src]$ jps 17186 Jps 17078 TaskManagerRunner 16809 StandaloneSessionClusterEntrypoint

5. 访问WebUI界面8081端口查看运行情况

分发Flink安装包配置到另外两个节点 使用Linux scp命令把node01节点的配置分发到另外两个节点上。

使用 scp 分发

[root@node01 conf]$ cd /usr/local [root@node01 local]$ scp -r flink node02:/usr/local/ [root@node01 local]$ scp -r flink node03:/usr/local/

启动Flink集群

批量统一启动

[root@node01 bin]$ start-cluster.sh Starting cluster. Starting standalonesession daemon on host node01. Starting taskexecutor daemon on host node01. Starting taskexecutor daemon on host node02. Starting taskexecutor daemon on host node03.

单独启动

[root@node01 bin]$ jobmanager.sh start / stop [root@node01 bin]$ taskmanager.sh start / stop

使用脚本查看服务进程

[root@node01 bin]$ jps

点赞
收藏
评论区
推荐文章
赵颜 赵颜
5个月前
[23章附电子书]SpringBoot+Vue3+MySQL集群 开发健康体检双系统
学习地址1:https://pan.baidu.com/s/1WWeuY50AZ0d3rbJ0LJ4pg提取码:kubm学习地址2:https://share.weiyun.com/74nsFIu0密码:ih38qp大家都知道医疗行业是互联网发展前景极好的
荀勗 荀勗
5个月前
SpringBoot+Vue3+MySQL集群 开发健康体检双系统(附电子书+23章全)
学习地址1:https://pan.baidu.com/s/1kWztQpuWaF1utuAGN1E5gw提取码:t547学习地址2:https://share.weiyun.com/74nsFIu0密码:ih38qp今天跟大家讲一个关于体检健康双系统的
赵嬷嬷 赵嬷嬷
4个月前
[升级16章+电子书]SpringBoot+Vue3 项目实战,打造企业级在线办公系统
学习地址1:https://pan.baidu.com/s/1gx9YoT3asP0fRdlwnBzXIQ提取码:ftyi学习地址2:https://share.weiyun.com/jVSDdcBU密码:cruqf9SpringBootVue3项目实战
双寿 双寿
4个月前
Vue3+Pinia+Vite+TS 还原高性能外卖APP项目[完结10章]
学习地址1:https://pan.baidu.com/s/1qGqggdxT2yUf0ifiFUeYg提取码:jgap学习地址2:https://share.weiyun.com/Wjw3QpeQ密码:gxrfcw大家好,今天我将带着大家用Vue3Pi
赵嬷嬷 赵嬷嬷
3个月前
WPF高级实战课程《知产代理数字化解决方案》
学习地址1:https://pan.baidu.com/s/1J0cDIHK8T49QABEimK9UA提取码:ypzr学习地址2:https://share.weiyun.com/7RUYskT6密码:adbvfp一、什么是WPF?WPF是微软新一代图形
赵嬷嬷 赵嬷嬷
3个月前
[完结8周]LLM大语言模型算法特训,带你转型AI大语言模型算法工程师
学习地址1:https://pan.baidu.com/s/1qq4jYRutBn5Jox0UHfU2Hg提取码:6tzd学习地址2:https://share.weiyun.com/grO4IKgp密码:bfvf7y一、大语言模型(LLM)是基于海量文本
双寿 双寿
2个月前
flink实时规则营销系统教程(第39期,2023版)
参考资料地址1:https://pan.baidu.com/s/1JHDIgWz4yHZ46hL7gIUA提取码:b9dv参考资料地址2:https://share.weiyun.com/cE3EUSA3密码:chi9p6一、《flink实时规则营销系统》
鲍二家的 鲍二家的
2个月前
AI Agent智能应用从0到1定制开发(12章)
学习地址1:https://pan.baidu.com/s/1ccnoXsPCUg4eP5rSrD0UA提取码:o0mu学习地址2:https://pan.baidu.com/s/1JYJ6dMkwgx0XWQnCM6Q0A提取码:2m68AIAgent已
双寿 双寿
1个月前
2024版React18+Next.js14+Nest.js全栈开发复杂低代码项目[21章]
学习地址1:https://pan.baidu.com/s/1HywEauDrHr7UoJAp9nDww提取码:imjn学习地址2:https://share.weiyun.com/vXd3qr0O密码:bcrymy低代码平台技术目前在国内外都发展迅猛。早
鲍二家的 鲍二家的
1个月前
[完结17章]SpringBoot3+Vue3 开发高并发秒杀抢购系统
学习地址1:https://pan.baidu.com/s/1DRZXkQeGkrPwhVTd2ko00g提取码:gpwn学习地址2:https://share.weiyun.com/ysK13sR2密码:74m96t众所周知,作为开发新手,入行、实习、转