FWQ
浅谈Redis 缓存的三大问题及其解决方案
浅谈Redis 缓存的三大问题及其解决方案 收藏 本篇文章给大家分享《浅谈Redis 缓存的三大问题及其解决方案》,覆盖了数据库的常见基础知识,其实一个语言的全部知识点一篇文章是不可能说完的,但希望通过这些问题,让读者对自己的掌握程度有一定的认识(B 数),从而弥补自己的不足,更好的掌握它。 Redis 经常用于系统中的缓存,这样可以解决目前 IO 设备无法满足互联网应用海量的读写请求的问题。 一、缓存穿透 缓存穿透是指缓存和数据库中都没有的数据,而用户不断发起请求,如发起 id 为-1 的数据或者特别大的不存在的数据。有可能是黑客利用漏洞攻击从而去压垮应用的数据库。 1. 常见解决方案 对于缓存穿透问题,常见的解决方案有以下三种: 验证拦截:接口层进行校验,如鉴定用户权限,对 ID 之类的字段做基础的校验,如 id 缓存空数据:当数据库查询到的数据为空时,也将这条数据进行缓存,但缓存的有效性设置得要较短,以免影响正常数据的缓存; Copypublic Student getStudentsByID(Long id) {…