- 博客(3)
- 收藏
- 关注
原创 直接操作数据库再删除缓存与延迟双删策略差异的一些解释
在数据库更新后,如果直接删除缓存,而此时恰好有大量请求涌入,这些请求会因为缓存缺失而直接打到数据库上,形成所谓的“缓存穿透”,这可能会对数据库造成极大的压力,甚至导致服务不可用。:通过在数据库操作前后各进行一次删除操作,尤其是在第二次删除(延迟后删除)时加入适当的延迟,可以给之前的读请求留出足够的时间完成,从而减少由于并发带来的不一致问题。:虽然第一次删除时可能会有短暂的缓存缺失,但相比于直接更新数据库再删除缓存,这种方式能更好地控制并发请求对数据库的冲击,维护服务的稳定性,从而间接提升用户体验。
2024-05-30 16:32:47
355
1
原创 Java基础:垃圾回收器会回收的对象
不再被任何活跃对象引用的对象:当一个对象不再被任何其他对象引用时,它就成为垃圾,垃圾回收器会将其回收并释放其占用的内存空间。对象的引用被置为null的情况:如果一个对象的引用被置为null,意味着程序不再需要这个对象,垃圾回收器会将其回收。总的来说,Java的垃圾回收器会回收不再被程序使用的对象和内存空间,以确保内存的有效利用和程序的性能优化。程序结束时未释放的内存:在程序结束时,垃圾回收器会回收程序运行时分配的所有内存,包括未显式释放的内存。//搬运自GPT问答。
2023-12-21 20:25:44
613
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人