有关 Redis 使用和开发过程中的七条宣言
- 使用抽象数据类型的 DSL
- 内存存储是第一要务
- 基础数据结构对应基本 API
- 代码如诗
- 反对复杂
- 两层 API
- 以优化为乐
Redis 的特征
- 速度快
- 基于键值对的数据结构服务器
- 丰富的功能
- 简单稳定
- 客户端语言多
- 持久化
- 主从复制
- 高可用和分布式
Redis 的使用场景
可以做什么
- 缓存
- 排行榜系统
- 计数器应用(用户访问量统计)
- 社交网络
- 消息队列系统
不可以做什么
- 大规模数据存储
- 冷数据存储,即不经常操作的数据
用好 Redis 的建议
- 勿当黑盒使用,开发和运维一样重要
- 阅读源码
安装
Windows
在 GitHub 下载 Windows Redis
在配置文件 redis.windows-service.conf 中,找到 requirepass foobared 字样,在其后面追加一行,输入requirepass 123456。这是访问 Redis 时所需的密码,一般测试情况下可以不用设定密码。不过,即使是作为本地访问,也建议设定一个密码。
进入计算机服务中(右键计算机—>管理—>服务和应用程序—>服务),再在右侧找到 Redis 名称的服务,查看启动情况。如未启动,则手动启动之。正常情况下,服务应该正常启动并运行了,但是因为前面修改过配置文件,需要重启服务。
测试一下 Redis 能否正常工作。用命令进入 Redis 安装路径,输入 redis-cli 并回车(redis-cli 是客户端程序)如图正常提示进入,并显示正确端口号,则表示服务已经启动。
Linux
下载
$ sudo apt update
$ sudo apt install redis-server
配置
打开 Redis
的配置文件
$ sudo vi /etc/redis/redis.conf
在文件中,找到 supervised
指令。该指令允许您声明一个 init
系统来管理 Redis
作为服务,从而为您提供对其操作的更多控制。受 supervised
指令默认设置为 no
。由于您正在运行使用 systemd init
系统的 Ubuntu
,请将其更改为 systemd
。
1. # If you run Redis from upstart or systemd, Redis can interact with your
2. # supervision tree. Options:
3. # supervised no - no supervision interaction
4. # supervised upstart - signal upstart by putting Redis into SIGSTOP mode
5. # supervised systemd - signal systemd by writing READY=1 to $NOTIFY_SOCKET
6. # supervised auto - detect upstart or systemd method based on
7. # UPSTART_JOB or NOTIFY_SOCKET environment variables
8. # Note: these supervision methods only signal "process is ready."
9. # They do not enable continuous liveness pings back to your supervisor.
10. supervised systemd
重新加载 Redis
服务文件以反映您对配置文件所做的更改
$ sudo service redis restart
查看 Redis
的运行状态
$ sudo systemctl status redis
输出如下结果表示运行成功
配置、启动、操作、关闭 Redis
启动 Redis
默认配置(不建议使用)
$ redis-server
运行启动(不建议使用)
$ redis-server --port 6380
配置文件启动(建议使用)
$ redis-server /opt/redis/redis.conf
Redis 命令行客户端
交互式
$ redis-cli -h 127.0.0.1 -p 6379
$ get hello
命令式
$ redis-cli -h 127.0.0.1 -p 6379 get hello
停止 Redis 服务
$ redis-cli shutdown
参考
【1】Redis 开发与运维@付磊 张益军
【2】windows 下 Redis 的安装和配置—图文教程