道友,你都用Redis做啥了?
举报
左羊
发表于 2022/06/09 13:29:41
2022/06/09
【摘要】 今天左羊求助兄弟部门的道友帮助后,休息的时候我和这位道友进行了如下对话:L道人:道友!Redis是个啥技术啊? 左羊:Redis是一款NoSQL型数据库,目前市面上的数据库左羊了解到主要分为两种,一种是关系型,一种是非关系型的。也是一款缓存型数据库。 L道人:哦哦!那道友你们都用Redis做啥了呢?你们是如何在项目中使用Redis的呢? 左羊:我们宗门主要使用Redis仙法来处理高并发,高性...
今天左羊求助兄弟部门的道友帮助后,休息的时候我和这位道友进行了如下对话:
左羊:Redis是一款NoSQL型数据库,目前市面上的数据库左羊了解到主要分为两种,一种是关系型,一种是非关系型的。也是一款缓存型数据库。
L道人:哦哦!那道友你们都用Redis做啥了呢?你们是如何在项目中使用Redis的呢?
左羊:我们宗门主要使用Redis仙法来处理高并发,高性能,及一些心跳和安全认证。
安全认证,例如调用我们的接口所需的Token认证需要存入Redis中。
心跳,一些宗门的内网项目无法被公网直接请求时,我们通过向Redis插入心跳信息,然后内网阵法(程序)定期轮询Redis中对应的信息以达到通讯的目的。
高性能,就以宗门中的道法查询阵法程序来讲,如果有一个请求发到我们的阵法时,阵法需要完成一系列操作后从阵基(Mysql)中查询一个结果,耗时500个瞬息(ms),但是这个结果可能很长一段时间都不会变化,或变了也不会立即通知香客(用户),所以啊!既然这个结果是一定时间内不会变化的,我们就将这个结果存储到阵法神识(缓存)中去,下次再有香客来查这条数据时几个瞬息就可以得到结果了,性能提高数百倍。这就是所谓的高性能了。
高并发,假设一个场景,宗门仙宝秒杀活动,几十万教众同一时间段发起请求,Mysql的单机qps大概时2000个左右,这时每个瞬息会有5000个请求进到宗门的秒杀阵法中,那么就可能会有3000位教众的请求无法写入数据库中,实际还有其他的解决方案(削峰,限流,集群)等横向纵向技术及方案来解决这件事,但贫道这里要将的是Redis,这时我们就可以引入Redis,因为Redis没有Mysql那么负复杂的SQL结构,KEY-VALUE型。而且也没有Mysql那么频繁的IO操作,数据存在内存中,所以Redis的单机qps可以轻松达到数万数十万,可以大幅提升新能,优化用户体验。
推荐
【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱:
cloudbbs@huaweicloud.com
评论(0)