在我的flink应用程序中,我依赖flink的可查询状态来查询计算结果。
不幸的是,在运行应用程序并接收许多计算请求一段时间之后,查询客户机就死了(它不再响应了)。我已经调试了很长一段时间,但不明白为什么会发生这种情况。
你有什么提示吗,为什么 QueryableStateClient
死了?
是 RocksDBStateBackend
问题的解决方案?是 RocksDBStateBackend
在生产中更受欢迎,尽管可能有点慢?
我的堆栈是: Flink 1.6.2
我的并行/线程级别>1
我不是在用 MemoryStateBackend
或者 FsStateBackend
状态后端。我还没有测试过 RocksDBStateBackend
. 我知道下面的警告,但是 RocksDBStateBackend
速度慢吗?
读-修改-写模式不安全,可能导致可查询状态服务器由于并发修改而失败。RocksDBStateBendback不会出现这些问题。
与 FsStateBackend
,我尝试了本地文件系统和hdfs。两个都失败了。
我还问过flink:在x时间之后可以删除可查询状态吗?找出“过多”状态是否是问题所在。
暂无答案!
目前还没有任何答案,快来回答吧!