商城简介及系统架构设计
商城是一个综合性的 B2B2C 平台,类似京东商城、天猫商城。网站采用商家入驻的模式,商家入驻平台提交申请,有平台进行资质审核,审核通过后,商家拥有独立的管理后台录入商品信息。商品经过平台审核后即可发布。审核通过的商品即可在平台销售。商城注册用户可以在商城浏览商品、搜索商品、使用购物车、购买商品、添加商品到订单以及参与秒杀团购活动。
商城主要分为网站前台、运营商后台、商家管理后台三个子系统。
商城前台共分为门户、搜索、商品详情页、购物车、秒杀、个人中心、订单系统、单点登陆系统及支付系统共9个模块。
运营商后台是运营商的运营人员的后台管理系统。商城管理员、运营人员可以在运营商后台管理系统中审核商家的入驻申请、商品提交申请、管理用户及对应的订单、商家结算、数据统计分析等,客服可以在运营商后台管理系统中处理用户的资讯及投诉。运营商后台管理系统的功能主要包括商家审核、品牌管理、规格管理、模板管理、商品分类管理、商品审核、广告类型管理、广告管理、订单查询、商家结算等。
商家管理后台是入驻的商家进行管理的后台,商家申请入住后即可获得商家后台管理系统的使用权限,在商家后台管理系统可以提交商品信息,品牌申请,规格申请等,商家提交的商品信息必须由商城管理员在运营商后台管理系统进行审核方可进行正式的对外销售。商家后台管理系统的功能是对商品的管理以及订单查询统计、资金结算等功能。
商城系统架构采用SOA架构,它是一种支持面向服务的架构样式。从服务、基于服务开发和服务的结果来看,面向服务是一种思考方式。其实SOA架构主要应用于互联网项目开发。随着互联网的发展,网站应用的规模不断扩大,常规的垂直应用架构已无法应对,分布式服务架构以及流动计算架构势在必行,迫切需一个治理系统确保架构有条不紊的演进。
商城系统架构图
数据库表结构设计:
表名称 | 含义 |
tb_brand | 品牌 |
tb_specification | 规格 |
tb_specification_option | 规格选项 |
tb_type_template | 类型模板:用于关联品牌和规格 |
tb_item_cat | 商品分类 |
tb_seller | 商家 |
tb_goods | 商品 |
tb_goods_desc | 商品详情 |
tb_item | 商品明细 |
tb_content | 内容(广告) |
tb_content_category | 内容(广告)类型 |
tb_user | 用户 |
tb_order | 订单 |
tb_order_item | 订单明细 |
tb_pay_log | 支付日志 |
前端:angularJS + Bootstrap
后台:SSM( springmvc+spring+mybatis)
数据库:mysql,使用mycat读写分离
开发模式:SOA
服务中间件:dubbox,需要和zookeeper配合使用
注册中心:zookeeper
消息中间件:Activemq,使用spring-jms
负载均衡:nginx
搜索:solr集群(solrCloud),配合zookeeper搭建, 使用spring-data-solor
缓存:redis集群,使用spring-data-redis
图片存储:fastDFS集群
网页静态化:freemarker
单点登录:cas
权限管理:SpringSecurity,
跨域:cros
支付:微信扫描
短信验证:阿里大于
密码加密:BCrypt
富文本:KindEditor
事务:声明式事务
任务调度:spring task