百战商城

我要开发同款
pingfanzhilu2023年08月23日
118阅读
所属分类Dubbo、springboot、MyBatis-Plus、Redis、Elasticsearch

作品详情

项目描述:百战商城是一款常见的电商网站,项目采用前后端分离架构。前端开发主要使用 vue.js,后端使用 Dubbo 技术进行分布式调用。项目分为商家端和用户端。商家端有权限管理、商品管理、广告管理等功能。用户端有用户注册和登录、搜索商品、添加购物车、商品下单、支付、秒杀商品等功能。职责描述:1、广告模块:其主要功能包括:广告的投放、广告的显示;其主要流程是:在商家端的广告模块中添加广告信息,客户在用户端刷新页面时,服务器对广告查询后返回广告信息。提升查询广告的效率,使用 Redis 做缓存,除第一次查询外,每次查询都先查询 Redis 缓存库,并将数据缓存到 Redis 中,后台对广告信息做写操作或新增广告信息的时候,先写数据库,保证写成功,再对 Redis 对淘汰缓存处理,避免用户端查询广告信息在 Redis 缓存中拿到脏数据。2、商品搜索模块:其主要功能包括:商品信息的全文搜索、复杂查询条件搜索、查询结果的不同排序方式等。商品信息的搜索模块是基于 Elasticsearch 实现。其流程是:前台搜索系统中,用中文分词器中的“ik_smart”分词器对存储在 ES 索引中的数据的商品名称和副标题等字段的数据做分词处理,然后做搜索;在后台管理平台中对商品信息进行写操作(新增、上架、更新、下架等)时,当对数据库中数据写操作成功后,通过 rabbitmq 调用远程服务对 ES 中的商品信息做数据同步处理,实现数据库和 ES 索引库双写一致。3、添加购物车、商品下单、支付模块:用户购买商品的流程为:搜索商品 > 查看商品详情 > 添加到购物车 > 生成商品订单 > 支付;将用户的购物车信息保存到 redis 当中,所有用户的购物车作为一个 hash 类型的数据保存,hash 的键是用户 id,hash 的值是购物车商品列表;用户从购物车选中要下单的商品,下单成功后,生成订单数据保存到数据库,并将该商品从用户购物车中删除;用户支付时后台会向支付宝沙箱发送请求返回一个支付二维码,用户扫描二维码进行付款,付款成功后支付宝会发送一条支付成功的通知,收到通知后修改订单状态为已支付,搭建内网穿透服务,让支付宝沙箱调用回调方法接收通知。
查看全文
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论