摘要: 实现消费券秒杀的优化,在加入限时抢购的优惠券时,自动的将消费券的库存stock信息也加入到redis中(可设为抢购结束后过期) 抢购之前在redis中进行库存是否充足(stock)、用户是否已经抢购(set)的判断 如果条件都满足,则将订单信息加入到消息队列中 另开启一个线程将消息队列中订单信息异步 阅读全文
posted @ 2022-10-22 15:37 CDUT的一只小菜鸡 阅读(802) 评论(0) 推荐(0) 编辑
摘要: 用户签到 在Redis中使用位图(BitMap)来存储签到信息,可以大大减小开销。同时在设计redis数据结构时,在key中加上时间、用户id等信息,可以统计该用户在某个时间段内的签到情况。(bitmap最大有2^32位bit位) ==具体的数据结构设计为==: {"sign:userId:yyyy 阅读全文
posted @ 2022-10-22 09:16 CDUT的一只小菜鸡 阅读(639) 评论(0) 推荐(0) 编辑
摘要: 好友动态推送 基于推模式实现探店笔记,一个人发布blog,在将blog保存到数据库的同时将blog发送到每个粉丝的收信箱中;收信箱按时间戳进行排序(类似于朋友圈);收信箱查询数据时按滚动分页进行查询。 ==滚动分页== 在进行分页查询时,如果关注的人有新的动态,则不予查询,接着按照上一页的分页查询( 阅读全文
posted @ 2022-10-21 23:00 CDUT的一只小菜鸡 阅读(210) 评论(2) 推荐(0) 编辑
摘要: 点赞功能 业务说明 1、每个用户只能点一次赞,再次点击时取消点赞 2、在Blog属性中增加isLike字段,用于判断当前用户是否点赞 3、isLike的值从Redis中获取,可以用redis自带的持久化机制,也可以在数据库中设计表,定时持久化到数据库 4、点赞功能使用的是redis的set数据结构, 阅读全文
posted @ 2022-10-20 17:56 CDUT的一只小菜鸡 阅读(1098) 评论(0) 推荐(0) 编辑
摘要: 全局唯一Id生成器 为实现唯一性、递增性、安全性、高可用、高性能,能支持未来大量订单业务的订单id的快速生成,给出一种id生成的方法。 代码实现 package com.hmdp.utils; import org.springframework.data.redis.core.StringRedi 阅读全文
posted @ 2022-10-18 20:48 CDUT的一只小菜鸡 阅读(191) 评论(0) 推荐(0) 编辑
摘要: 添加缓存业务流程及代码实现 业务流程 说明: 1、先从redis中进行查询,redis中如果有对应的数据则直接返回;如果没有再进入数据库查询 2、从数据库查询到的数据判断是否为空,非空写入redis再返回 代码实现 ShopServiceImpl.getByIdWithCache() private 阅读全文
posted @ 2022-10-16 22:21 CDUT的一只小菜鸡 阅读(948) 评论(0) 推荐(1) 编辑
摘要: 短信登录业务 短信登录的业务流程 基于session实现短信登录的业务流程 流程说明: ==发送短信==:从前端获取到手机号,校验手机号,生成验证码,将验证码保存到session ,并将验证码发送至手机 ==短信验证码登录、注册==:从前端获取手机号和验证码,将获取的验证码与session中的验证码 阅读全文
posted @ 2022-10-15 19:48 CDUT的一只小菜鸡 阅读(344) 评论(0) 推荐(0) 编辑
摘要: Redis 建议参考目录使用!!! Redis(Remote Dictionary Server ),即远程字典服务 redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并在此基础上实现了主从同步 免费、开源,当下最热门的NoSQL技术之一,结构化数据库 Redis能干嘛 1、 阅读全文
posted @ 2022-09-28 12:24 CDUT的一只小菜鸡 阅读(40) 评论(0) 推荐(0) 编辑
摘要: 设计模式 1、软件设计七大原则 开闭原则 对扩展开放,对修改关闭。用抽象构建框架,用实现扩展细节 里氏代换原则 子类可以扩展父类的功能,但不能修改父类的功能;子类除了添加新方法外,不应修改父类的方法;子类可以实现父类的抽象方法,但不能覆盖父类的非抽象方法。 依赖倒转原则 高层模块不应该依赖底层模块, 阅读全文
posted @ 2022-09-16 13:24 CDUT的一只小菜鸡 阅读(45) 评论(0) 推荐(0) 编辑
摘要: 今天看工厂模式的时候遇到类一个问题 那个博主使用了这样一句话clazz instanceof WhiteHuman.class,其中clazz为函数传进来的参数,是Class类 自己敲了一遍发现报错,instanceof后面不可以获取反射对象 搜了一下,发现instanceof后面不可以跟泛型 而我 阅读全文
posted @ 2022-09-12 00:44 CDUT的一只小菜鸡 阅读(47) 评论(0) 推荐(0) 编辑