【Redis】Redis简单入门及使用

举报
huahua.Dr 发表于 2020/09/23 16:48:36 2020/09/23
【摘要】 Redis数据库为Nosql型数据库中的一种,Nosql数据库为非关系数据库,特点是易扩展、大数据量,高性能、灵活的数据模型、高可用。

简介

Redis数据库为Nosql型数据库中的一种,Nosql数据库为非关系数据库,特点是易扩展、大数据量,高性能、灵活的数据模型、高可用。

1.redis是什么

Redis是一个开源(BSD许可),内存数据结构存储,用作数据库、缓存和消息代理,它支持数据结构,如字符串、散列、列表、集合、带有范围查询的排序集、位图、超级日志、具有半径查询流的地理空间索引。Redis具有内置复制、Lua脚本、LRU驱逐(算法)、事务和不同 级别的磁盘持久化,并通过Redis Sentinel(哨兵)提供高可用性并使用Redis Cluster(集群)自动分区。Remote Dictionary Server(远程数据服务)简称Redis,是一key-value存储系统。

2.redis的特点

1)数据结构丰富

2)持久化

3)支持简单事务

4)主从配置方便

3.redis与memcached相比的独特之处

1)redis可以用来做存储(storge)和缓存(cache),而memcached只能用来做缓存(cache),redis具有持久化功能

2)memcached的存储的结构只有一种类型:字符串;而redis则可以存储字符串、链表、哈希结构、集合、有序集合等。

Nosql的适用场景:

NoSQL数据库在以下的这几种情况下比较适用:

(1)、数据模型比较简单;

(2)、需要灵活性更强的IT系统;

(3)、对数据库性能要求较高;

(4)、不需要高度的数据一致性;

(5)、对于给定key,比较容易映射复杂值的环境。

Redis是一个key-value存储系统,主要应用场景为:缓存、任务队列、应用排行榜、网站访问统计、数据过期处理、分布式集群架构中的session分离。

优点

1.支持多种数据结构,如 string(字符串)、 list(双向链表)、dict(hash表)、set(集合)、zset(排序set)、hyperloglog(基数估算)

2.支持持久化操作,可以进行aof及rdb数据持久化到磁盘,从而进行数据备份或数据恢复等操作,较好的防止数据丢失  的手段。

3.支持通过Replication进行数据复制,通过master-slave机制,可以实时进行数据的同步复制,支持多级复制和增量复制,master-slave机制是Redis进行HA的重要手段。

4.单线程请求,所有命令串行执行,并发情况下不需要考虑数据一致性问题。

5.支持pub/sub消息订阅机制,可以用来进行消息订阅与通知。

6.支持简单的事务需求,但业界使用场景很少,并不成熟。

缺点

1.Redis只能使用单线程,性能受限于CPU性能,故单实例CPU最高才可能达到5-6wQPS每秒(取决于数据结构,数据大小以及服务器硬件性能,日常环境中QPS高峰大约在1-2w左右)。

2.支持简单的事务需求,但业界使用场景很少,并不成熟,既是优点也是缺点。

3.Redis在string类型上会消耗较多内存,可以使用dict(hash表)压缩存储以降低内存耗用

redis安装

1.压缩包解压安装

(1)下载Redis服务端的包,样例中使用的版本是redis-5.0.8.tar.gz

(2) 解压文件:  tar –xvf redis-5.0.8.tar.gz

(3)  进入解压后的文件/redis/src目录,运行make开始编译,编译成功之后会在src目录下生成redis-cli , redis-server , redis-sentinel , redis-check-dump , redis-check-aof , redis-benchmark 可执行文件

4)在/redis-5.0.8目录下新建bin目录:mkdir bin ,拷贝步骤3生成的可执行文件到/redis/bin目录:cp 文件 路径

(5)拷贝redis目录下的redis.confbin目录,redis默认使用端口是6379,可以使用netstat –an|grep 6379检查6379端口是否被占用

(6)redis/bin目录下执行“nohup ./redis-server &”让redis服务端在后台运行,检查nohup.out中是否打出如下日志”  The server is now ready to accept connections on port 6379”,标识redis服务端启动成功。

 

Redis的简单使用

1.修改redis.conf文件中属性中的daemonize=yes,开启后端启动。

2.redis可执行工具说明:

redis-serverRedis服务器的daemon启动程序 

redis-cliRedis命令行操作工具。 

redis-benchmarkRedis性能测试工具,测试Redis在你的系统及你的配置下的读写性能 

redis-check-rdb: 检查file.rdb 文件 

redis-check-aof:检查file.aof 文件 

redis-sentinel: redis用于HA的哨兵

redis-passwd:redis服务端加解密工具

3.启动redis:运行命令nohup ./redis-server &,然后运行./redis-cli

4.简单的使用redis存储数据,样例:存储名字xxx

设置命令:set name xxx

查看名字:get name

查看所有key值:keys * 

删除名字: del name

【版权声明】本文为华为云社区用户翻译文章,如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容, 举报邮箱:cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。