
缓存
文章平均质量分 93
胖虎爱Java
如果有一天,我一定要离开这个世界,一定要让人记住我。
展开
-
Redis-分布式锁实现秒杀
上一篇文章,我详细解释了redis实现商品秒杀防止超卖上一篇文章中 我使用原子命令结合lua脚本似乎就已经避免了并发 那问题来了 为啥还需要用锁?这俩有啥区别呢???原创 2025-03-18 11:07:02 · 1186 阅读 · 0 评论 -
Redis-锁-商品秒杀防止超卖
正常的情况下,他确实也不会超卖,但是增加了大量并发请求的情况下,就会出现超卖。按照网上redis教程的知识,redis是单线程,这也就是说,正常情况下来说,redis的任何一个单命令都应该是原子性的,可以应对并发,所有客户端请求的命令按顺序执行,天然线程安全。你需要在redis中提前缓存 库存的数据 例如: 我这里提前缓存了stock:10=10 然后通过redis去获取库存余额 ,库存不为零则对库存进行递减,如果秒杀用户小于10,就往用户里面添加一个用户id,直到添加了10个秒杀成功的用户。原创 2025-03-17 13:54:20 · 865 阅读 · 0 评论 -
Redis
NoSQL(Not Only SQL)是一种非关系型数据库,用于存储和检索非结构化或半结构化数据。灵活的数据模型:NoSQL 数据库通常支持灵活的数据模型,如文档、键值对、列族、图等,而不需要固定的表结构。高可扩展性:NoSQL 数据库通常设计为分布式系统,能够轻松扩展以处理大量数据和高并发请求。高性能:由于其简单的数据模型和分布式架构,NoSQL 数据库通常能够提供低延迟和高吞吐量的数据访问。无模式或灵活模式:NoSQL 数据库通常不需要预先定义模式,允许动态添加或修改数据结构。原创 2025-03-10 10:25:10 · 1096 阅读 · 0 评论