Redis入门指南
安装Redis
如何安装Redis取决于您的操作系统。请参阅下面最适合您需求的指南:
一旦您启动并运行Redis,并且可以使用redis-cli进行连接,就可以继续进行下面的步骤。
使用CLI对Redis进行探索
外部程序使用TCP接口和Redis特定协议与Redis对话。该协议在Redis客户端中可以对不同的编程语言响应。为了让Redis更简单,Redis提供了一个实用的命令行程序,用于向Redis发送命令。这个程序叫redis-cli。
要检查Redis是否正常工作,首先要使用redis-cli发送PING命令:
$ redis-cli ping
PONG
运行redis-cli后,根据命令名及其参数,将此命令发送到主机上运行的redis实例(端口6379)。您可以更改redis-cli使用的主机和端口,只需尝试–help选项来检查使用信息。
另一种运行redis-cli的有趣方式是不带参数:程序将以交互模式启动。您可以键入不同的命令并查看回复。
$ redis-cli
redis 127.0.0.1:6379> ping
PONG
redis 127.0.0.1:6379> set mykey somevalue
OK
redis 127.0.0.1:6379> get mykey
“somevalue”
此时,您可以与Redis进行对话。可以暂停一下本教程,开始15分钟的Redis 数据类型介绍,以便学习一些Redis命令。
如果您已经知道一些基本的Redis命令,您可以继续。
保护Redis
默认情况下,Redis绑定到所有接口,并且无需身份验证。如果您在非常可控的环境中使用Redis,将其与外部网络和攻击隔离,当然是很好的。但是,如果一个未加固的Redis暴露在网络中,则存在很大的安全隐患。如果您不能100% 确定您的环境是否安全,请检查以下步骤以使Redis更安全,这些步骤是按照提高安全性的顺序排列的。
1)确保Redis用于侦听连接的端口(默认情况下为6379,如果在群集模式下运行Redis,则为16379,对于Sentinel,为26379)已安装防火墙,以保证无法从外部环境与Redis建立连接。
2)使用设置了bind指令的配置文件,以确保Redis仅响应您正在使用的网络接口。例如,如果您仅从同一台计算机本地访问Redis,则仅使用环回接口(127.0.0.1),以此类推。
3)使用requirepass选项添加额外的安全层,以便客户端需要使用AUTH命令进行身份验证。
4)如果您的环境需要加密,请使用spiped或其他SSL隧道软件,以加密Redis服务器和Redis客户端之间的通信。
请注意,一个暴露在互联网上、没有任何安全保障的Redis实例是很容易被利用的,所以请确保你了解上述情况并至少应用一个防火墙层。防火墙设置好后,尝试从外部主机用redis-cli连接,以证明自己无法访问该实例。
在你的应用程序中使用Redis
>> require ‘rubygems’
=> false
>> require ‘redis’
=> true
>> r = Redis.new
=> #<Redis client v4.5.1 for redis://127.0.0.1:6379/0>
>> r.ping
=> “PONG”
>> r.set(‘foo’,’bar’)
=> “OK”
>> r.get(‘foo’)
=> “bar”