Redis系列之Redis的安装与配置(一)

Redis是一个开源的使用ANSI C语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value数据库。与memcached一样,为了保证效率,数据都是缓存在内存中。区别的是Redis会周期性的把更新的数据写入磁盘或者把修改操作写入追加的记录文件,并且在此基础上实现了master-slave(主从)同步。

Redis性能惊人,这个只有1万多行源代码的程序,国内前十大网站的子产品估计用1台Redis就可以满足存储及Cache的需求。很多开发者都认为Redis不可能比Memcached快,Memcached完全基于内存,而Redis具有持久化保存特性,即使是异步的,Redis也不可能比Memcached快。但是测试结果基本是Redis占绝对优势。
性能测试结果SET操作每秒钟 110000 次,GET操作每秒钟 81000 次。目前全球最大的Redis用户是新浪微博,在新浪有200多台物理机,400多个端口正在运行着Redis, 有+4G的数据跑在Redis上来为微博用户提供服务。

这里主要是先介绍下Redis的安装与配置。

linux安装方法,我的linux是CentOS。
$ wget http://redis.googlecode.com/files/redis-2.6.5.tar.gz
$ tar xzf redis-2.6.5.tar.gz
$ cd redis-2.6.5
$ make install
我在安装时发现cc command not found的错误
解决办法:yum -y install gcc

安装成功后,启动服务
$ nohup src/redis-server &

进入客户端
$ ./src/redis-cli

Redis配置文件为redis.conf。一般不需要做太多更改。

redis主从配置

在从Redis的配置文件中配置master的ip地址和redis-server的端口。
slaveof <masterip> <port> 如 slaveof 192.168.2.6 6379
记得要先启动MASTER 再启动SLAVE,若在同一台电脑上,需保证主从的端口号不一样,若更改了端口号,启动客户端命令行为redis-cli -p 端口号
主:

从:

这里主要介绍两种数据持久化的方式。
Snapshotting
Redis有两种存储方式,默认是snapshot方式,实现方法是定时将内存的快照(snapshot)持久化到硬盘,这种方法缺点是持久化之后如果出现crash则会丢失一段数据。下面是默认的快照保存配置
save 900 1 #900秒内如果超过1个key被修改,则发起快照保存
save 300 10 #300秒内容如超过10个key被修改,则发起快照保存
save 60 10000 #60秒内容如超过10000个key被修改,则发起快照保存

Append-only file
aof 比快照方式有更好的持久化性,是由于在使用aof持久化方式时,redis会将每一个收到的写命令都通过write函数追加到文件中(默认是 appendonly.aof)。当redis重启时会通过重新执行文件中保存的写命令来在内存中重建整个数据库的内容。当然由于os会在内核中缓存 write做的修改,所以可能不是立即写到磁盘上。这样aof方式的持久化也还是有可能会丢失部分修改。不过我们可以通过配置文件告诉redis我们想要 通过fsync函数强制os写入到磁盘的时机。有三种方式如下(默认是:每秒fsync一次)
appendonly yes //启用aof持久化方式

  1. appendfsync always //每次收到写命令就立即强制写入磁盘,最慢的,但是保证完全的持久化,不推荐使用
    appendfsync everysec //每秒钟强制写入磁盘一次,在性能和持久化方面做了很好的折中,推荐
  2. appendfsync no //完全依赖os,性能最好,持久化没保证
    aof 的方式也同时带来了另一个问题。持久化文件会变的越来越大。例如我们调用incr test命令100次,文件中必须保存全部的100条命令,其实有99条都是多余的。因为要恢复数据库的状态其实文件中保存一条set test 100就够了。为了压缩aof的持久化文件。redis提供了bgrewriteaof命令。收到此命令redis将使用与快照类似的方式将内存中的数据 以命令的方式保存到临时文件中,最后替换原来的文件。

总结:
  1.根据业务需要选择合适的数据类型,并为不同的应用场景设置相应的紧凑存储参数。
  2.当业务场景不需要数据持久化时,关闭所有的持久化方式可以获得最佳的性能以及最大的内存使用量。
  3.如果需要使用持久化,根据是否可以容忍重启丢失部分数据在快照方式与语句追加方式之间选择其一,不要使用虚拟内存以及diskstore方式。
  4.不要让你的Redis所在机器物理内存使用超过实际内存总量的3/5。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
要安装和配置 Redis,您可以按照以下步骤进行操作: 1. 下载并安装 Redis:您可以从 Redis 官方网站(https://redis.io/download)下载最新的稳定版本。根据您的操作系统,选择适当的压缩包进行下载,并将其解压缩到所需的位置。 2. 启动 Redis 服务器:打开终端或命令提示符,并进入 Redis 安装目录。然后,运行以下命令来启动 Redis 服务器: ``` redis-server ``` 或者,如果您希望在后台运行 Redis 服务器,请使用以下命令: ``` redis-server --daemonize yes ``` 3. 配置 RedisRedis 的默认配置文件名为 `redis.conf`,它通常位于 Redis 安装目录下。您可以通过编辑此文件来进行配置更改。 一些重要的配置项包括: - `bind`:指定要监听的 IP 地址,默认为 `127.0.0.1`。 - `port`:指定 Redis 服务器监听的端口,默认为 `6379`。 - `requirepass`:设置连接密码,以增加安全性。 - `maxmemory`:设置 Redis 实例可用的最大内存量。 编辑完成后,保存并关闭配置文件。 4. 重新启动 Redis 服务器:如果您在配置文件中进行了更改,需要重新启动 Redis 服务器以使更改生效。 如果 Redis 在后台运行,请首先使用以下命令停止 Redis 服务器: ``` redis-cli shutdown ``` 然后再次启动 Redis 服务器。 5. 连接到 Redis:要连接到 Redis 服务器并执行命令,您可以使用 `redis-cli` 命令。默认情况下,它会连接到本地主机(`127.0.0.1`)的默认端口(`6379`)。如果您在配置文件中进行了更改,请相应地指定主机和端口。 例如,要连接到本地主机的默认端口,运行以下命令: ``` redis-cli ``` 如果设置了连接密码,在运行 `redis-cli` 命令时,请使用 `-a` 参数指定密码: ``` redis-cli -a your_password ``` 以上是 Redis 的基本安装和配置过程。您可以根据自己的需求进一步定制和优化 Redis 的设置。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值