当前位置: 代码迷 >> 综合 >> 全栈项目
  详细解决方案

全栈项目

热度:86   发布时间:2024-02-22 17:47:54.0

一 。项目概述

       优购家居这个项目是为xxx公司开发o2o模式一个项目。它是以家具用品为中心,为用户提供了家具展示,家具分类查询,家具下单,家具上门安装服务,售后服务。它主要有组织机构,用户模块,商品管理,订单管理, 支付等模块。它是使用前后端分离开发模式,前端使用的是vue技术栈,后台使用的是springboot+ssm+docker。

 

二。负责业务模块   

组织机构:

  1. 部门管理 对部门管理的表增删改查
  2. 员工管理 对员工管理的表增删改查
  3. 可以对员工的添加,使用状态的禁用,
  4. 店铺的员工:实现了店铺入驻,店铺审核,实名认证,支付信(支付宝,微信,银联等)息绑定,店铺创建员工。

用户模块:

  1. 用户的注册
  2. 用户的登录
  3. 商品的收藏,店铺的收藏功能实现
  4. 浏览足迹:最近浏览商品,店铺。
  5. 用户的地址管理
  6. 用户的银行卡信息管理

 

三。项目人员组成 

    项目经理(PM):管人管项目 1

    架构师(SE):  负责项目架构+技术选型+疑难问题解决+培训 1

    UI:    设计界面 1

    H5:    前端开发工程师 2

    后台:   后台开发工程师 3-4‘、

    测试:   测试人员 1

    运维人员: 搭建开发公共环境,线上环境 1

 

四。项目架构 前后端分离

       前后端分离并不只是开发模式,而是web应用的一种架构模式。在开发阶段,前后端工程师约定好数据交互接口,实现并行架构,开发和测试;在运行阶段前后端分离模式需要对web应用进行分别部署,前后端之间使用HTTP或者其他协议进行交互请求。
前后端分离的优缺点:
优点:
   分工明确,专业的人做专业的事情。
   专业可以做出炫丽优美界面
   人员培养更加专业化,精确化
缺点:
    成本提高,人员多。
    项目管理难度也提高,前后端都要管,协调他们之间交流。

五。使用的技术 

  1. Springboot 后端框架
  2. FastDFS 分布式文件系统  
  3. Redis  一种非关系型的数据库
  4. 短信消息  
  5. 百度地图  
  6. 微信三方登录  
  7. 支付宝支付
  8. 加密技术
  9. 邮件技术
  10. Quartz
  11. Vue技术栈: nodejs npm webpack vuecli elmentui easymock
  12. Linux
  13. docker

 

  六。功能实现

  注册:手机号注册和游戏注册

  1. 用户通过页面输入手机号
  2. 点击注册发起获取手机验证码请求
  3. 输入验证码
  4. 输入密码
  5. 点击注册

这是大体的流程

   具体的流程

1.获取验证码的时候

2.当前验证码是否有效

3.生成6位验证码

4.记录验证码消息,通过Redis记录发送时间,验证码

5.要判断验证码是否过期

6.调用短信接口

7.记录发送日志依据。

8.最后注册成功,后台保存注册数据到表中。

 

  登录

账号登陆,手机号验证码登录,微信。QQ。微博等三方登录

 

 

微信三方登录 

  1. 用户发起授权请求
  2. 用户扫码
  3. 登录成功跳转主页
  4. 没有绑定或者注册的
  5. 跳转绑定和注册页面进行绑定
  6. 绑定成功跳转主页实现微信登录

登录和注册的时候采用了加密技术

   密码采用了md5加密的方式再存入数据库,因为md5是不可逆的,更安全

    

七。跨域解决

    1:后端配置-最全   最通用,开发的时候我们选择它

    2:前端配置-只适合脚手架搭建项目(vuecli),不支持纯html+css(主站)

    3:Nginx代理    上线的时候就使用它

 

 

redis是一款优秀的nosql(非关系型),key-vlaue,内存级别的数据库!redis是单线程,操作是安全的。

 

Redis的list可以用来实现消息队列,key用来表示队列名称,客户端向对应的key代表的队列发消息,发消息采用rpush,lpush实现,取消息采用rpop或lpop实现。

 

Redis存储机制分成两种

    RDB(Redis Database):指定的时间间隔能对你的数据进行快照存储。

    AOF(Append Only File):每一个收到的写命令都通过write函数追加到文件中。

    无论是那种机制,Redis都是将数据存储在内存中。

redis的淘汰策略

淘汰一些数据,达到redis数据都是有效的,节约内存资源。选择合适的淘汰策略进行淘汰。

 

FastDFS 是用 c 语言编写的一款开源的分布式文件系统。FastDFS 为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用 FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。

用在店铺入驻上传log的时候

原来的操作都需要对数据库crud

为了减轻服务器压力。

 

    邮件技术

  1. 当后台的审核人员点击审核通过的时候,向用户注册时留下的邮箱发送邮件,告知用户审核通过。
  2. 发件人  邮件服务器  收件人
  3. 需要准备QQ邮箱授权码
  4. 发送简单的邮件和复杂邮件。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  相关解决方案