项目描述:
“抢茶乐”是 APIcloud 开发的电商 APP。使用 ThinkPHP3.2 框架、PHPstorm 集成开发环境。本应用旨在用户不仅能下单同时也能赚钱做生意。软件具备团购、抢购二大功能。该应用软件兼具原生应用和微信公众号的优势,同时具有跨平台的优点,能够兼容 Android 和 IOS。其中仓库商品出售是该应用软件创新之处。
工作内容:
1、团购系统实现,发起团购为此团购创建一个集合并且将发起团购的用户 ID加入集合,当有人加入此团购就往集合加入一个用户ID,每次加入后都会检查是否满足团购人数,满足则团购成功。同时发起团购时也会创建一个 redis 队列,守护进程定时检查团购是否过期,过期的则团购失败。
2、抢购系统实现,为避免用户重复下单,利用了 redis setnx 的特性。在库存操作利用 mysql 事务和其锁机制,比如:用户下单,将商品库存加锁,别的用户在此时想要修改库存,则返回抢购失败。
3、分销系统实现,每邀请一个用户,都会生成关于该用户的父级关系的数据,存放用户 ID、父级 ID、关系等级。生产订单时也同时存入各级可获得的佣金以及用户 ID,当用户确认收货时则根据订单发放佣金。
4、性能优化,后期用户暴增,数据库和服务器遇到了不少问题,在数据库方面对查询比较频繁的字段建立了索引,对执行时间长的 sql 语句进行分析优化、服务器方面实现按权重轮训反向代理到各自服务器上。