电商项目 2020-11-28

电商项目

2020-11-28 工作内容

完成用户验证码

1.图形验证码

  • 前端逻辑 :Vue处理验证码与用户交互的逻辑,并生成UUID 标识唯一验证码
  • 后端逻辑 :生成,保存(从前端接收UUID并存入Redis数据库),响应验证码图片
  • 设计生成验证码接口,重点返回image/jpg类型数据

2.短信验证码

  • 前端逻辑:Vue处理与用户交互,避免频繁发送短信(使用有效期的标记),并初步校验验证码
  • 后端逻辑:进行图片验证码校验,通过则生成,并发送验证码(验证码保存Redis数据库),注册时校验用户输入验证码,并避免频繁发送短信(使用有效期的标记)
  • 使用第三方来发送验证码:容联云平台,阅读技术文档,并使用

    使用容联云SDK时候,记得封装单例,减少内存的消耗

  • 在昨天注册视图类类,补充逻辑,验证短信验证码
  • 使用pipeline 减少与Redis数据库的交互,性能优化

3.异步方案

  • 目的:为了解耦业务逻辑,让两个业务没有直接联系,保证主逻辑的通畅,因为使用第三方发送短信,会有轻微阻塞。
  • 方案:使用生产者消费者模型,使用成熟模块celery,完成生产者,消费者,Redis作为消息队列。

总结

  1. 对于项目中的一些固定数字,固定字符串,最好弄个集合,比如py文件,放进去,以免后期修改时候,直接修改源代码。比如Redis设置过期时间的参数,就可以放进一个集合里,并从里面调用就好了
  2. Redis 客户端向服务器发送一次请求,得到一次响应,期间socket会阻塞等待接收,因此只有两个请求的话,第一个请求没返回回来,第二个请求也不会执行,因为第一个在等待,因此,需要使用pipelin来传递两个请求
  3. celery连接数据库错误,keyerror,数据库连接错误,自己查了半天,各种看源码,原来是配置文件时候,多打了个冒号,干。
本作品采用《CC 协议》,转载必须注明作者和本文链接
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!