1.项目采用前后端分离架构。前端开发主要使用vue.js,后端使用Dubbo技术进行分布式调用。分为商家端和用户端。商家端有权限管理、商品管理、广告管理等功能。用户端有用户注册和登录、搜索商品、添加购物车、商品下单、支付、秒杀商品等功能.
2.
a.使用Elasticsearch实现商品搜索。
b.秒杀商品:运用缓存减少数据库压力。在秒杀时,首先会将数据库的秒杀商品同步到缓存中,用户从缓存中查询秒杀商品,抢购商品时减少缓存中的库存数量。产生的秒杀订单先写到缓存,付款成功后再写入数据库。秒杀商品是直接生成订单保存到redis中,等订单状态变成支付后,同步到数据库中。
c.商品管理:使用fastdfs存储图片,通过nginx代理访问图片。