FWQ
从一个小需求感受Redis的独特魅力(需求设计)
从一个小需求感受Redis的独特魅力(需求设计) 收藏 知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个数据库开发实战,手把手教大家学习《从一个小需求感受Redis的独特魅力(需求设计)》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟! 分享一个简单的小需求应该怎么设计实现以及有关Redis的使用 Redis在实际应用中使用的非常广泛,本篇文章就从一个简单的需求说起,为你讲述一个需求是如何从头到尾开始做的,又是如何一步步完善的。之前写过一篇,也涉及到了Redis在项目中的实际应用,有兴趣的可以看一下。 需求 设定,现在我们有一个APP,产品新提出一个叫“程序员树洞”的功能,具体功能就不说了,其中这个功能有一点需要做的是在使用该功能时,如果是首次进入会展示一个协议页面,用户需要勾选后点确定才能进入功能,此后再进该功能,不再显示协议页直接进入该功能。如下图所示, 原型图 需求分析 需求就是这么的简单,我们来分析一下。 1、用户点击该功能时前端需要知道该给用户显示哪个页面,这一步需要请求后端接口,后台告诉前端这个用户有没有同意过协议。 2、用户勾选协议点确定,后端需要记录这步操作(记录用户已经同意协议),这一步需在点确定时前端请求后端接口。 概要设计 前面需求分析里说了,后端需要告诉前端用户有没有统一过协议,所以后端需要把这个信息记录下来,最好是记录到数据库保存,那就需要一张表来记录同意过协议的用户。表结构大致是:id,客户号,插入时间。 详细设计 1、记录客户是否已同意过协议并提供查询功能(查询是否同意过协议) 2、没有同意过的和同意过的用户信息怎么存储 3、如何高效的查询是否同意过 4、怎么保证高并发下服务的可用性,数据库的可用性 功能实现 后端提供两个接口, 1、hasAgree(),查询该用户是否已同意协议 2、recordAgree(),记录用户已同意协议 第一版 Just DB 很容易嘛!不就是CRUD吗,小意思。用户进来先查数据库有没有记录,没有返回用户没有同意过协议,前端给用户展示协议页,否则展示功能页;用户点同意后,后台记录用户已点了同意协议,记录到库。一个查询一个插入,5分钟搞定嘛。 直接甩代码…