<返回更多

Redis这么讲你还不能入门么

2020-08-10    
加入收藏

redis是当今世界最为流行的非关系型数据库之一,国内的华为阿里巴巴腾讯百度今日头条美团等,国外的谷歌微软亚马逊等大型互联网公司都在广泛的应用Redis。

其实不光在互联网公司,Redis在一些非互联网公司中也有非常广泛的应用。

可以这么说但凡有点规模的IT公司,Redis都是标配,Redis与软件研发息息相关,如果不懂Redis,你将错过整个世界

所以我们不光要学Redis,还要把Redis学好。

Redis到底是啥

相信很多朋友即使没有用过也听说过Redis, Redis似乎是我们IT人群中的一个高频词汇。

用官方的话来说

Redis is an open source (BSD licensed), in-memory data structure store, used as a database, cache and message broker.

Redis 是一个开源(BSD许可)的内存中的数据结构存储系统,它可以用作数据库、缓存和消息中间件

是不是你每个字都认识,但是连起来就有点懵逼了,好吧, 那我再来给大家翻译一下。

大家把Redis想象成为一个非关系型数据库,所以Redis和MySQL是完全不一样的,Redis是一个NoSql数据库(not only SQL), 这个数据库存在于内存中,并且不用建立和维护表、字段等信息。而且Redis可以做的很多有趣的事,MySQL都是无能为力的哦。

 

Redis支持的数据结构

Redis不像MySQL那样通过SQL语句来存取数据。它是通过一定的数据结构配合对应的命令来完成数据存取的。

Redis 支持的数据结构包括 字符串(strings), 散列(hashes), 列表(lists), 集合(sets), 有序集合(sorted sets) 与范围查询, bitmaps, hyperloglogs和 地理空间(geospatial) 索引半径查询

为了让大家有一个直观的感受,我们以字符串(strings)为例,来看一下Redis到底是怎么存取数据的

redis-server.exe redis.windows.conf

Redis这么讲你还不能入门么

 

redis-cli -h 127.0.0.1 -p 6379

Redis这么讲你还不能入门么

 

set name zhangsan

Redis这么讲你还不能入门么

 

get name

Redis这么讲你还不能入门么

 

上边的name是我们可以随便定义的名字,也可以是age或者address, 这叫做Key, 而zhangsan 就是我们的Value。

Redis这么讲你还不能入门么

 

Redis的应用场景

Redis的应用场景非常之多,下面我简单列举几个最经典的场景

  1. 数据库缓存

随着系统用户的增多,数据库的访问压力也在逐渐增加,有些不常用的数据比如 字典数据、系统配置数据等就可以放入到Redis中缓存起来,这样就不用每次都去访问数据库来获取这些数据,从而减小了数据库的压力。

大体流程图如下

Redis这么讲你还不能入门么

 

  1. Session数据共享

系统在单机部署的情况下,服务器能够根据用户传来的cookie找到其对应的服务器Session,从而能够确定该用户的身份信息。

但是在集群部署的情况下,上述流程就会失效。

假如用户登录的请求被分发到了server1, server1上会存储用户的session信息。

Redis这么讲你还不能入门么

 

假如用户下一步的操作是获取菜单,该请求同样被分发到了server1, 这时是没有问题的。

Redis这么讲你还不能入门么

 

但是当用户获取权限时请求被分发到了server5, 由于server5不存在用户的session信息,所以要求其重新登录,显然这是一个不合理的要求。

Redis这么讲你还不能入门么

 

为了解决这个问题我们可以把Session信息存入到Redis中,所有服务器共享Redis 进而 共享了Session信息。

  1. 分布式锁

同样在单机部署的情况下,JVM的锁机制是没有问题的,可以达到同步线程的目的。但是在集群部署的情况下,JVM的锁机制将完全失效,因为显然锁住集群一个节点的JVM对象对集群其他节点是不可见的,所以分发到其他节点的请求,照样可以顺利运行,并不受锁的限制。

Redis这么讲你还不能入门么

 

因为Redis是所有集群节点共享的,用Redis来实现锁,就可以帮我们完美解决这个问题。

Redis这么讲你还不能入门么

 

如想了解更多关于Redis的知识,可以私信笔者,会有资料相送哦。

声明:本站部分内容来自互联网,如有版权侵犯或其他问题请与我们联系,我们将立即删除或处理。
▍相关推荐
更多资讯 >>>