本系统采用Maven来管理和开发,属于java分布式,由nginx负载均衡,tomcat作为服务器,搭建tomcat集群,nosql redis作为缓存和数据库,Mysql作为后台数据库,主从结构,读写分离。服务器采用linux作为服务器。
一:sso单点登录系统1.检测参数是否可用jqueryAjax
2.用户注册,同时检测数据的可用性
3.用户登录,登录成功,并将其用户信息存入redis缓存,同时给客户端写回缓存的redis的key,且设置其生存时间。
4.查询用户是否已经登录,即拿着客户端的cookie去redis缓存去查。
二:ItemSearch商品搜索系统1.根据搜索条件(page pageSize)利用httpClient去搜索系统去查询商品信息。
2.当后台商品信息时,通过RabbitMQ中交换机给搜索系统发来监听消息,搜索系统接收商品删除.修改.增加的消息并作出相应的处理。
三.Manager-后台商品1.添加商品基本信息,商品描述信息,商品规格信息(三张表)
通过RabbitMQ declare的Exchange发送信息给solr(ItemSearch(搜索系统),搜索系统将其添加到document中。
2.更新商品基本信息,商品描述信息,商品规格参数
通过RabbitMQ交换机发送到web(前台系统)和ItemSearch(商品搜索系统),web删除缓存,搜索系统更新document。
3.查询商品所有信息,先走redis缓存,找不到再查询数据库,之后再存入redis;
4.查询所有商品基本信息(分页);
四.Manager-类目系统1.通过商品类目Id(itemCatId)查询出该类目的相关信息。
2.查询出所有类目(三级)封装在一个json里面
3.根据商品类目Id(itemCatId)查询出该类目对应的规格参数名称。
4.根据商品类目Id(itemCatId)保存该类目对应的规格参数名称。
5.查询该类目对应的规格参数名称,可以用来填写该商品的规格参数。(商品有唯一对应的类目)
6.商品图片上传,保存到图片服务器。
五.Manager-crm内容管理系统内容保存查询修改删除且通过RabbitMQ消息通知Web前台系统,删除redis内容缓存。
六.web前台系统1.加载首页,从后台Manager-crm内容管理系统查询出内容,并缓存到redis中,监听消息队列,删除缓存。
2.商品详情页,先从redis缓存中拿item,如果不存在,再通过httpClient查询后台系统,得出商品详细信息。
监听消息队列,当后台商品信息删除,修改时,前台收到消息,删除redis缓存对应的商品信息。
3.购物车(未登录时)
游客第一次添加商品到购物车,解决方案是将商品放在redis缓存中,生成一个购物车cartRedisKey,并将该cartRedisKey以cookie写回到客户端,并设置该购物车的生存时间。购物车的数据以json格式保存在redis中。当用户已经有cartRedisKey时候,用户会通过cookie带过来,这样就可以在Redis中找到该cartRedisKey对应的购物车,同时为保证购物车的活力,更新他的生存时间。
4.删除购物车的商品,通过cartRediskey找到购物车,删除相应的item。再将其保存到redis缓存中,更新其生存时间。
5.修改和以上同理,之下是购物车的在redis中的原理图:hget hset。
6.购物车(用户登录时)
系统将userId和itemId保存到购物车系统中,通过httpClient保存购物车商品信息到购物车系统。删除,更新都是通过购物车系统提供的接口来完成删除和修改甚至保存。
7.如果用户没有登录却在一直查看商品,配置拦截器每天一次刷新购物车的生存时间。当天是否刷新过以客户端cookie为准。
8.在购物车生成订单,之前配置用户是否登录拦截器,没有登录的重定向去登录。
9.去sso系统登录,登录成功以后,将客户端的cookie中的cartRedisKey以及userId发送到RabbitMQ交换机,购物车队列绑定到交换机上获取消息,合并购物车。并删除redis缓存中的购物车数据。
10.购物车生成订单,把订单数据发送到订单系统生成订单,存到数据库。通过RabbitMQ发送消息删除购物车信息。RabbitMQ把订单的orderId和userId发送到orderSearch系统中添加到solrdocument中。
11.搜索商品,去itemSearch系统中搜索商品,分页查询和显示。
12.会员个人中心。显示所有的订单,去订单系统中查找所有的订单。
13.会员个人中心。根据订单号或者商品title去搜索相应的订单并分页显示。
七.订单系统创建订单查询订单修改订单状态根据用户昵称查询订单。
八.订单查询系统1.根据关键字查询去查询订单,分页。
2.监听队列,有消息过来就插入订单到solrdocument中。
随商信息技术(上海)有限公司 b2b2c多用户商城系统是基于PHP技术的企业级电子商务平台系统,系统支持平台自营、招商加盟和多商家入驻、集成微信商城、移动端APP商城、微信小程序于一体。公司主营业务包含商城系统定制开发、新零售系统解决方案、电商平台系统定制开发、商城网站建设服务等等,ShopSuite为大、中、小企业提供一个安全、高效、强大的电子商务解决方案,协助企业快速构建、部署和管理其电子商务平台,拓展企业销售渠道,致力于推动PHP技术和电子商务行业的发展而不断努力。