开发者社区> 问答> 正文

flink中具体怎么做压力测试和监控?

flink中具体怎么做压力测试和监控?

展开
收起
游客ahv54x37wvm7u 2021-12-07 20:39:10 1397 0
1 条回答
写回答
取消 提交回答
  • 我们一般碰到的压力来自以下几个方面: 一,产生数据流的速度如果过快,而下游的算子消费不过来的话,会产生背压。 背压的监控可以使用 Flink Web UI(localhost:8081) 来可视化监控,一旦报警就能知 道。一般情况下背压问题的产生可能是由于 sink 这个 操作符没有优化好,做一下 优化就可以了。比如如果是写入 ElasticSearch, 那么可以改成批量写入,可以调 大 ElasticSearch 队列的大小等等策略。

    二,设置 watermark 的最大延迟时间这个参数,如果设置的过大,可能会造成 内存的压力。可以设置最大延迟时间小一些,然后把迟到元素发送到侧输出流中去。 晚一点更新结果。或者使用类似于 RocksDB 这样的状态后端, RocksDB 会开辟 堆外存储空间,但 IO 速度会变慢,需要权衡。

    三,还有就是滑动窗口的长度如果过长,而滑动距离很短的话,Flink 的性能 会下降的很厉害。我们主要通过时间分片的方法,将每个元素只存入一个“重叠窗 口”,这样就可以减少窗口处理中状态的写入

    2021-12-07 20:39:25
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
Flink CDC Meetup PPT - 龚中强 立即下载
Flink CDC Meetup PPT - 王赫 立即下载
Flink CDC Meetup PPT - 覃立辉 立即下载