用户通过 RuleManager 配置规则并将规则变更事件发布到 Zookeeper 中,RuleListener 监听到事件的变更后,若是新增规则,则会通过 groovy 动态语言编译生成 RulePattern 实例。随着规则的增多,CEP operator 线程处理效率会下降,需要通过把规则分组绑定到对应的 Worker 上来加速规则处理。CEP operator 线程接收到事件后会分发给所有 Worker,Worker 线程处理完后通 过队列发布到 CEP operator 线程,最后发布到下游。最后是数据全链路监控的问题。数据流从收集端经过 Flume 传输,再到消息中心指标计算,然后发布到下游 的实时决策,不允许大量的数据丢失以及数据延迟。基于以上诉求,需要对整体数据链路进行监控,采用 prometheus + grafana 进行 metrics 的收集以及告警。这里主要针对 Flume 消息中间件进行消息堆积以及丢 失的监控。Flink 指标计算主要监控运行状态以及背压情况,下游监控 CEP 决策的时间。对数据链路的监控能 够帮助运维快速定位并解决线上的问题。
以上内容摘自《Apache Flink 案例集(2022版)》电子书,点击https://developer.aliyun.com/ebook/download/7718 可下载完整版
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。