- 博客(4)
- 收藏
- 关注
原创 采用Redis做旁路缓存,出现数据不一致的几种情况及处理方法
针对旁路缓存出现不一致的问题,主要有以下几种情况:1、更新数据库,然后更新缓存这种情况在并发时,由于网络的问题,可能导致后来更新的数据早于先前更新的数据线程1更新数据库 → 线程2更新数据库→ 线程2更新缓存→ 线程1更新缓存此时出现后来更新的数据早于先前更新的数据,导致数据不一致问题2、更新缓存,然后更新数据库若先更新缓存,缓存更新成功后,但更新数据库时发生异常回滚,缓存中的数据无法回滚,导致数据不一致3、删除缓存,然后更新数据库线程1更新数据库,先删除缓存 → 线程1向数据库中写入数据
2021-05-11 16:59:10 773
原创 Flink状态管理StateTtlConfig说明及示例
StateTtlConfig将生存时间(TTL)分配给任何类型的keyed State。如果配置了 TTL 并且状态值已过期,可以清理存储的值。为了使用statettl,必须首先构建StateTtlConfig配置对象。然后,通过以下配置,可以在任何StateDescript 中启用TTL功能:StateTtlConfig ttlConfig = StateTtlConfig.newBuilder(Time.seconds(1)).setUpdateType(StateTtlConfig.UpdateT
2021-05-08 15:23:16 2531
原创 Flink程序本地可以运行,但Flink程序打包上传Flink集群后,出现ClassNotFoundException / NoClassDefFoundError异常
Flink本地可以运行,但Flink程序打包上传Flink集群后,出现ClassNotFoundException / NoClassDefFoundError异常出现这种状况可能有以下两种:1.打包上传后,加载类使用冲突,原因时集群lib目录下本身有这个Jar包,打包上传也带着这个Jar包,在加载时会出现类冲突2.设置双亲委派机制(原理查看其它文章),在flink-conf.yaml中添加classloader.resolve-order: parent-first 优先使用父类加载器,仅供参考
2021-04-21 09:44:47 2372
原创 Flink 日志中文乱码
通过Web界面查看Flink日志,在Log打印出现中文乱码,这种情况下可以在flink.conf. yaml加上 env.java.opts: “-Dfile.encoding=UTF-8”
2021-04-08 14:01:07 1664
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人