对于redis在后台的管理系统是做一个什么样的事情,一般来说是使用redis实现什么功能?

在后台的管理系统里面,一般应该不会用redis去缓存日志吧,应该缓存的是一个经常查询且不经常改变的一个数据,但是我在后台系统中好像没有看到有这种性质的数据,感觉都差不多,但是redis在系统中经常用到,想要请教一下在一般的后台管理系统中,redis到底是一个什么定位,具体能够用基于redis来实现一个什么功能?请求解答一下迷惑,谢谢各位

我们不要人云亦云,看到都在用就一定要撸上去,项目场景用不到就不需要使用。比如有如下场景可以考虑使用

1、缓存,毫无疑问这是Redis当今最为人熟知的使用场景。再提升服务器性能方面非常有效;

2、排行榜,如果使用传统的关系型数据库来做这个事儿,非常的麻烦,而利用Redis的SortSet数据结构能够非常方便搞定;

3、计算器/限速器,利用Redis中原子性的自增操作,我们可以统计类似用户点赞数、用户访问数等,这类操作如果用MySQL,频繁的读写会带来相当大的压力;限速器比较典型的使用场景是限制某个用户访问某个API的频率,常用的有抢购时,防止用户疯狂点击带来不必要的压力;

注:限速器也是对请求限流的一种实现方式。

4、好友关系,利用集合的一些命令,比如求交集、并集、差集等。可以方便搞定一些共同好友、共同爱好之类的功能;

5、简单消息队列,除了Redis自身的发布/订阅模式,我们也可以利用List来实现一个队列机制,比如:到货通知、邮件发送之类的需求,不需要高可靠,但是会带来非常大的DB压力,完全可以用List来完成异步解耦;

6、Session共享,默认Session是保存在服务器的文件中,即当前服务器,如果是集群服务,同一个用户过来可能落在不同机器上,这就会导致用户频繁登陆;采用Redis保存Session后,无论用户落在那台机器上都能够获取到对应的Session信息。

数据字典啦,配置项啦,像登录用户信息啦,挺多的