电商简介
- 技术特点:
- 技术新
- 技术范围广
- 分布式
- 高并发、集群、负载均衡、高可用
- 海量数据
- 业务复杂
- 系统安全
- 电商模式:
- B2B:企业到企业,商家到商家。代表:阿里巴巴、慧聪网。
- B2C:商家到客户。代表:京东、淘宝商城(B2B2C)。
- C2C:客户到客户。淘宝集市。
- O2O:线上到线下。
淘淘商城简介
- 一个B2C平台,类似淘宝、京东。
功能模块
- 功能模块:
- 后台管理系统:管理商品、订单、类目、商品规格属性、用户管理以及内容发布等功能。
- 前台系统:用户可以在前台系统中进行注册、登录、浏览商品、首页、下单等操作。
- 会员系统:用户可以在该系统中查询已下的订单、收藏的商品、我的优惠券、团购等信息。
- 订单系统:提供下单、查询订单、修改订单状态、定时处理订单。
- 搜索系统:提供商品的搜索功能。
- 单点登录系统:为多个系统之间提供用户登录凭证以及查询登录用户的信息。
技术架构的对比
传统架构
- 功能模块集中在一个工程里,部署在服务器或者集群上,集群的每台服务器包含相同的代码。
- 问题:
- 模块之间耦合度太高,其中一个升级其他都得升级。
- 开发困难,各个团队开发最后都要整合一起。
- 系统的扩展性差。
- 不能针对每个模块的需要,灵活的进行分布式部署。
分布式架构
- 分布式:把系统拆分成多个工程,多个工程互相协作。
- 优点:
- 把模块拆分,使用接口通信,降低模块之间的耦合度。
- 把项目拆分成若干个子项目,不同的团队负责不同的子项目。
- 增加功能时只需要再增加一个子项目,调用其他系统的接口就可以。
- 可以灵活的进行分布式部署。
- 缺点:系统之间交互需要使用远程通信,接口开发增加工作量。
技术选型
- Spring、SpringMVC、Mybatis
- JSP、JSTL、jQuery、jQuery plugin、EasyUI、KindEditor(富文本编辑器)、CSS+DIV
- Redis(缓存服务器)
- Solr(搜索)
- httpclient(调用系统服务)
- Mysql
- Nginx(web服务器)
工程总览
- 使用了面向服务的架构(Service-Oriented Architecture, SOA)
数据库
- mysql作为关系型数据库,提供数据的持久化。
- redis作为内存数据库,提供高性能的缓存。
服务层
- taotao-rest提供商品信息,内容服务。
- taotao-sso提供单点登录服务。
- taotao-order提供订单服务。
- taotao-search提供商品搜索服务,基于solr索引库。
交互
- taotao-portal作为网站的门户,与用户交互。
- 微信商城之类的app也可以调用服务层的服务,完成门户的功能。
- taotao-manager作为后台管理,供管理员完成对网站商品和内容的增删改查。
开发过程目录
- 淘淘商城简介——淘淘商城(一):电商行业的了解和商城架构的分析。
- 后台管理系统框架搭建——淘淘商城(二):使用IDEA结合maven创建多模块工程taotao-manager。
- SSM框架的整合——淘淘商城(三):对Mybatis、Spring、SpringMVC框架进行配置,实现整合。
- 商品列表功能实现——淘淘商城(四):基于SSM框架,使用pagehelper插件和datagrid组件完成分页展示功能。
- 商品类目选择——淘淘商城(五):使用easyui tree组件完成对商品类目的展示。
- 图片的管理方式——淘淘商城(六):分析传统和使用图片服务器的管理方式。
- ubuntu上安装vsftpd——淘淘商城(七):在linux安装ftp服务器,接收上传的图片。
- ubuntu上安装nginx——淘淘商城(八):在linux安装nginx,作为http服务器,提供图片访问的服务。
- 上传商品图片——淘淘商城(九):使用FTPClient和kindEditor上传图片到图片服务器。
- 添加商品功能——淘淘商城(十):编辑和将商品信息入库。
- 商品规格的数据库设计和实现流程——淘淘商城(十一):分析使用多张表或是模板储存商品规格。
- 商品规格管理的实现——淘淘商城(十二):使用模板法储存和展示商品规格。
- 前台工程搭建——淘淘商城(十三):搭建门户工程taotao-portal和服务层工程之一taotao-rest。
- 首页商品分类展示——淘淘商城(十四):jsonp使得ajax跨域调用服务层,展示商品分类。
- CMS系统开发——淘淘商城(十五):管理首页图片等内容。
- 首页大广告展示——淘淘商城(十六):使用httpclient调用服务层,展示首页广告。
- redis简介和安装配置——淘淘商城(十七):redis的学习和安装。
- redis优化商城首页.——淘淘商城(十八):在业务中添加读取和写入缓存的逻辑,并且同步缓存。
- solr7.3在ubuntu14上的安装配置和使用——淘淘商城(十九):学习并安装和使用新版的solr服务器。
- 基于solr7的搜索工程——淘淘商城(二十):搭建taotao-search,使用solrj导入商品索引并调用solr服务器进行搜索。
- 商品搜索结果展示——淘淘商城(二十一):http调用服务层,展示搜索的商品。
- 商品详情页面展示——淘淘商城(二十二):延时和按需加载商品内容,使用分层次的redis键。
- 单点登录系统架构——淘淘商城(二十三):分析会话机制、session共享问题,了解单点登录。
- 单点登录系统的接口开发——淘淘商城(二十四):搭建taotao-sso,开发用户相关接口并使用postman测试。
- 用户注册登录退出功能的实现——淘淘商城(二十五):操作cookie,标识用户登录状态,并实现页面跳转和拦截器强制登录。
- 购物车的实现——淘淘商城(二十六):在cookie中储存购物车,并在页面展示购物车商品。
- 订单系统的实现——淘淘商城(二十七):创建taotao-order,开发订单接口,并在门户工程中调用,展示订单和提交订单。
部署
项目源码
来源:CSDN
作者:娟宝宝萌萌哒
链接:https://blog.csdn.net/qq_40369829/article/details/79515237