请问flink中processfunction中使用了guava的限流器,但是运行过程中发现checkpoint总是失败,关于flink限流有什么好的方案吗?场景是这样的:我们读取hdfs文件,解压缩后,然后向下游发送,但是上游发送的速度太快了,如果不限流,直接会让flink主线程卡死
可以考虑使用 Flink 自带的限流工具类 BucketingSink。BucketingSink 可以将数据写入到指定大小的桶(bucket)中,可以设置桶的大小和写入速率。当桶满了之后,会暂停数据的写入,等待桶中的数据被消费后再继续写入。这样可以有效地限制上游数据的发送速率,避免过快地发送导致下游无法处理。
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。
实时计算Flink版是阿里云提供的全托管Serverless Flink云服务,基于 Apache Flink 构建的企业级、高性能实时大数据处理系统。提供全托管版 Flink 集群和引擎,提高作业开发运维效率。