一、商城项目介绍
1.1 项目背景
电商商城平台
B2C:商家对客户 平台运营方就是商家
C2B2C : 客户对商家对客户 平台运营商不卖东西 卖家买家都是平台的客户
企业级开发:企业内部使用的系统 管理系统CRM|ERP 学校教务系统
互联网开发:提供给所有用户使用的系统
1.2 项目功能
1.3 技术选型
SSM: 企业开发框架 基础的开发技术
单体项目: 项目的页面和后台代码在用一个项目里
单体项目遇到的问题是:用户对静态资源以及对java代码的请求压力都会落到Tomcat服务器上
部署在tomcat 并发量最多300
前端部署到nginx上 并发可以达到万级
1.3.2 技术清单
* 项目框架 :前后端分离
* 前端技术:jQuery vue(数据渲染能力) axios(通信能力) elementUI layUI bootstrap
* 后端技术:SpringBoot(spring+springmvc+mybatis) +mybatis RESTful swagger
* 服务器搭建:Linux Nginx
二、项目框架的演进
2.1 单体架构
前后端都部署在同一个服务器上(前后端代码都在用一个应用上)
2.2 前后端分离
含义:前后端分离开发部署 (前后端部署在不同的服务器)
优点:将对静态资源和对接口的访问进行分离,tomcat服务器只负责数据服务的访问
![](https://img.haomeiwen.com/i2055354/a5ea02881fd968d9.jpg)
2.3 集群搭建(分布式)
优点:提高并发能力和可用性
![](https://img.haomeiwen.com/i2055354/9200813ace23c01a.jpg)
2.4 分布式
1.基于redis的分布式锁:集群中不同服务器访问同一个数据库 会造成数据错误
2.分布式数据库 mycat
3.redis集群
4.数据库中间件 ElasticSearch
5.消息中间件
![](https://img.haomeiwen.com/i2055354/cf36de1d9147d3f1.jpg)
2.5 微服务架构
微服务架构:将原来在一个应用中的多个模块进行拆分,单独开发和部署 保证可用性和性能
优点:解决模块之间依赖的可用性 一个功能服务垮了 其他功能服务正常
微服务并不是解决高并发的 是解决高可用
![](https://img.haomeiwen.com/i2055354/4e8cfefbc332ca3a.png)
三、项目的搭建
基于Maven的聚合工程项目搭建 前端采用vue+axios 后端使用springboot整合ssm
3.1技术储备
Springboot:实现无配置的ssm的整合
Maven聚合工程:实现模块的复用
3.2项目搭建
创建聚合工程
基于springboot整合SSM
网友评论