智享—智能化生活服务平台(苍穹外卖)
项目描述:本项目包括后台管理端和用户端两部分。管理端可以对商品的分类、订单、员工等信息进行管理维护,统计各类数据,以及发放优惠卷;用户可以通过此平台浏览菜单、下单支付,并跟踪订单状态。餐厅端则可以接收订单、管理库存,并安排配送。
使用技术:Spring、SpringMVC、SpringBoot、MySQL、Mybatis、Redis、Jwt、WebSocket、Nginx、Vue
工作职责:
使用Redis缓存商铺信息,通过返回空值避免缓存穿透;为不同缓存设置不同的过期时间,防止缓存雪崩;互斥锁解决缓存击穿问题;使用Redis生成全局唯一ID,并通过乐观锁防止单体环境下的库存超卖;使用阻塞队列异步处理秒杀请求,提升系统吞吐量;通过WebSocket向前端传输数据,实现来单提醒功能,以及利用SpringTask定时任务实现订单的超时处理,超时自动取消订单;为防止接口被恶意调用,设计API秘钥、令牌校验等方式来提高接口安全性,并通过滑动窗口实现接口调用限流;使用Nginx作为http服务器,部署静态资源,实现反向代理和负载均衡生活优选 (黑马点评)
项目描述:本项目是一款用户点评和商户信息为主的生活服务平台,实现了商户点评、优惠券秒杀、好友关注和粉丝关注博主后,主动推送博主的相关评价等多个模块;用户可以浏览首页的推荐内容,搜索附近商家,查看商家的详情和评价以及发表探店评价。
使用技术:SpringBoot、Mysql、Lombok、MyBatis-Plus、Hutool、Redis、Jwt、Redisson、RabbitMQ
工作职责:
使用JWT技术进行登录认证,并使用ThreadLocal配合拦截器进行token校验,使用续约 token 避免用户登陆状态频繁过期;基于Redis做缓存,降低数据库压力,采用Cache Aside缓存更新策略、通过主动更新+超时剔除保证数据的一致性;采用”一锁二判三更新 ”方式设计接口幂等,通过Redisson实现分布式锁,确保库存和订单的并发安全,避免超卖和数据不一致;使用RabbitMQ绑定交换机和消息队列,实现监听异步秒杀下单使用Reids的BitMap实现用户签到,HyperLogLog实现UV统计,测量网站流量,降低内存占用,使用Redis中的GeoHash实现对附近商家的查找,
