简介
龙虾三少的秒杀项目
参考链接
https://blog.csdn.net/weixin_43672855/article/details/104452118?spm=1001.2014.3001.5501
多级缓存
redis 缓存, guawaCache缓存
比如获取商品列表的时候可以同时用上redis缓存和guawaCache缓存. 这样当guawaCache失效的时候访问redis缓存, 最后失败访问mysql.
限流
google.guava.RateLimiter就是令牌桶算法的一个实现类,OrderController引入这个类,在init方法里面,初始令牌数量为200。
每秒支持200人的流量. 超过的拒绝
使用验证码防止黄牛
awt 编写的图片,然后加上40条线段扰动图片. 四个字符.
使用异步操作
我们之前做了下单减存库存优化以及回补库存的操作,但是因为整个下单是属于一个transaction事务,如果用户下单成功,但是之后订单入库或返回前端的过程中失败,事务回滚,会导致少卖的现象,有可能造成库存堆积
我们的解决方法就是异步消息的发送要在整个事务提交成功后再发送
---------------------------我的天空里没有太阳,总是黑夜,但并不暗,因为有东西代替了太阳。虽然没有太阳那么明亮,但对我来说已经足够。凭借着这份光,我便能把黑夜当成白天。我从来就没有太阳,所以不怕失去。
--------《白夜行》