项目整体架构设计,技术选型:架构师要通盘考虑项目技术
技术选型:架构师要通盘考虑项目技术
1 用户层 H5、Vue.js、ElementUI、apache echarts(展示图表)等技术。而在构建移动端应用时,我们会使用到微信小程序。
2 网关层 Http服务器,部署静态资源,访问性能高。在Nginx中还有两个比较重要的作用: 反向代理和负载均衡
3 应用层 SpringBoot: 快速构建Spring项目, 采用 "约定优于配置" 的思想, 简化Spring项目的配置开发。
SpringMVC:SpringMVC是spring框架的一个模块,springmvc和spring无需通过中间整合层进行整合,可以无缝集成。
Spring Task: 由Spring提供的定时任务框架。
httpclient: 主要实现了对http请求的发送。
Spring Cache: 由Spring提供的数据缓存框架
JWT: 用于对应用程序上的用户进行身份验证的标记。
阿里云OSS: 对象存储服务,在项目中主要存储文件,如图片等。
Swagger: 可以自动的帮助开发人员生成接口文档,并对接口进行测试。
POI: 封装了对Excel表格的常用操作。
WebSocket: 一种通信网络协议,使客户端和服务器之间的数据交换更加简单,用于项目的来单、催单功能实现
4 数据层 MySQL: 关系型数据库, 本项目的核心业务数据都会采用MySQL进行存储。
Redis: 基于key-value格式存储的内存数据库, 访问速度快, 经常使用它做缓存。
Mybatis: 本项目持久层将会使用Mybatis开发。
pagehelper: 分页插件。
spring data redis: 简化java代码操作Redis的API
Mongodb
RabbitMQ
5 工具类和工具 git: 版本控制工具, 在团队协作中, 使用该工具对项目中的代码进行管理。
maven: 项目构建工具。
junit:单元测试工具,开发人员功能实现完毕后,需要通过junit对功能进行单元测试。
postman: 接口测工具,模拟用户发起的各类HTTP请求,获取对应的响应结果
6 环境搭建 测试环境,开发环境,前端开发环境,后端开发环境
7 后端项目结构了解 项目结构:
common[excepton,json,result,utils],
Service[config,controller,mapper,service,interceptor,Application],
pojo[entity,dto,vo]
8 Git,svn版本控制
9 数据库环境搭建
10 登录功能 登录,权限控制
11 接口文档管理 Show.doc,swagger
12 项目部署&资源规划
13 项目数据归档闭环
14 日志,性能测试jmater,监控,报警
15 性能优化:异步,缓存,数据归档,慢sql优化