关于博主
努力与运动兼备~~~有任何问题可以加我好友或者关注微信公众号,欢迎交流,我们一起进步!
微信公众号: 啃饼思录
QQ: 2810706745(i思录)
写在前面
嘿,小伙伴们好久不见。最近难得有空,出一套关于如何利用SSM(Spring、Spring MVC,Mybatis)来搭建二手市场交易平台的教程。本次教程利用的是java语言,最好是使用Jdk1.8的版本。
获取更多教程,请点击注册啃饼网:http://www.licheetools.top
开发流程
**环境搭建:**这里以windows10 64Bit为环境进行环境搭建。具体包括jdk的安装,Tomcat的安装,nginx的安装。
**数据库及接口的配置:**介绍表的设计思路,接口的设计思路
**项目初始化:**介绍Spring,Spring MVC,MyBatis的使用
**用户模块:**介绍个人中心资料修改,商品收藏等
**分类模块:**介绍如何进行二手商品类目的分类以及插件的使用
**商品模块:**主要介绍商品的富文本展示
**购物车模块:**介绍添加商品,更新购物车,查询购物车数量,价格动态显示
**收货地址模块:**添加地址,删除更新地址,地址详情,地址的列表等
**支付模块:**介绍支付宝的支付功能,回调功能,查询订单的支付状态,生成支付的二维码
**订单模块:**分为前台和后台,前台就是创建订单,获取订单的信息,列表的详情页,取消订单;后台负责订单的搜索,订单的详情,订单的发货
**云服务器模块:**介绍云服务器的配置与项目的打包上线。
淘宝技术架构
这里我找了一篇文章,大家可以了解一下:淘宝技术架构
在之前我们都是采用all in one的方式来进行项目的发布与运行:就是你的Application Server里面包含了Application ,File和DataBase,这样做的好处就是节省开支,但坏处就是很容易造成服务器挂掉。
然后就各自分开,各自采用不同的服务器:Application Server,File Server,DataBase Server,这种能防止File Server挂掉以后,系统还能运行,但是还是不能满足我们高并发的要求(因为你每次数据请求都必须直接与数据库进行连接,当访问量达到一定数量的时候,数据库响应时间也是很费资源),于是架构又开始升级。
我们知道80%的数据访问只存在于20%的数据上面,而且我们不希望每次都是从数据库中取出数据,于是我们可以使用缓存。缓存分为很多种,本地缓存和远程缓存。本地缓存称为local cache,远程缓存称为Remote Disteibuted Cache。我从网上找了几张图片,大家可以了解一下:
演化过程:在Application Server这里添加添加了一个负载均衡调度器,也变成了一个集群。
利用负载均衡调度器解决服务器的Session共享的问题,但是也有缺点:假设Application1的服务器重启了,那么它上面所有的sessio就全没了;然后就是我们的负载均衡调度器成了一个有状态的服务器,实现容灾就有麻烦。如果你让每个session都在各个服务器里面有一个备份,这的确能解决这个问题,但是当数量达到一个级别以后,这种方式是很费资源的。那么你又说,为我们可以让browser在提交数据的同时带上cookie,这样就不用担心服务器不能正常识别资源了,但是你想过没有,cookie的长度是有限的而且是有时间限制的,而且还是存放在本地,它的安全性就等不到保证了。