Login
网站首页 > 文章中心 > 其它

Redis解决高并发问题

作者:小编 更新时间:2023-08-08 11:50:31 浏览量:377人看过

Redis解决高并发问题-图1

高并发常见场景

商品抢购秒杀等活动

解决方式

使用Redis 列表结构实现队列数据结构,抢成功的使用 rpush 入队,再使用 lpop 出队.

Redis高并发可能产生的问题

redis宕机了,或者链接不上

redis宕机了,或者链接不上

解决方法:配置主从复制,配置哨兵模式,一旦发现主机宕机,让下一个从机当做主机.最坏的情况,只能关闭Redis连接,去往数据库连接.但由于数据量大,这样SQL数据库也会宕掉的.

如果redis缓存在高峰期到期失效,在这个时刻请求会向雪崩一样,直接访问数据库如何处理?

设置条件查询判断,判断redis缓存里是否有数据,如果没有,则去往数据库连接.当然要加分布式锁,利用redis的单线程+多路IO复用技术,原子性原理,让其它的线程请求等待,假若第一个线程进去获取到分布式锁在查询数据的途中宕掉了,不能让其它线程一直等待,设置等待一定时间判断是否取回数据,如果没有,递归调用自己的方法让第二个线程继续拿分布式锁查询数据库.当第二个锁从数据库拿到数据时,把数据值设置到redis数据库缓存中,设置失效时间,避免占内存,方便使用提高效率.

如果用户不停地查询一条不存在的数据,缓存没有,数据库也没有,那么会出现什么

参考资料

网站大规模并发处理方案:电商秒杀与抢购 这篇写的很好

以上就是土嘎嘎小编为大家整理的Redis解决高并发问题相关主题介绍,如果您觉得小编更新的文章只要能对粉丝们有用,就是我们最大的鼓励和动力,不要忘记讲本站分享给您身边的朋友哦!!

版权声明:倡导尊重与保护知识产权。未经许可,任何人不得复制、转载、或以其他方式使用本站《原创》内容,违者将追究其法律责任。本站文章内容,部分图片来源于网络,如有侵权,请联系我们修改或者删除处理。

编辑推荐

热门文章