秒杀处理
~~
不愿秃头的阳某
入一行,爱一行,懂一行。
展开
-
库存售不完的BUG
缓存库存中的问题库存售不完的BUG我们之前使用map来标记我们的库存已售完,比如当我们库存有100个,已经售完99个,当最后一个请求过来,此时我们最后一个请求过来,然后redis库存预减成功,但是数据库报错, 事务虽然回滚,但是redis中就已经售完了,所以此时数据库和redis中的数据就不一致了,所以我们同时在处理异常时,也需要对我们redis缓存进行还原,并且如果我们redis中的库存已经...原创 2020-01-13 17:48:28 · 2027 阅读 · 1 评论 -
redis缓存商品库存减压
redis缓存库存Redis预减库存:主要思路减少对数据库的访问,之前的减库存,直接访问数据库,读取库存,当高并发请求到来的时候,大量的读取数据有可能会导致数据库的崩溃。我们主要是通过这几点来实现的:1、系统初始化的时候,将商品库存加载到Redis 缓存中保存,并不是需要先请求一次才能缓存2、.收到请求的时候,现在Redis中拿到该商品的库存值,进行库存预减,如果减完之后库存不足,直接返回...原创 2020-01-05 21:22:24 · 3182 阅读 · 3 评论 -
隐藏秒杀接口地址
隐藏秒杀地址隐藏秒杀接口地址后,确保秒杀开始前没有人知道地址。http是明文传输的,访问的url,参数都可见,若不做隐藏,恶意用户可以在秒杀活动开始前就访问秒杀接口地址。秒杀项目完整代码地址:https://github.com/yang-mou/miaosha.git思路:1、第一次请求后台先验证用户是否登录和验证码是否正确,生成随机地址存入redis并且返回2、带着地址请求后台,后...原创 2020-01-06 14:39:43 · 2461 阅读 · 1 评论