`
jameswxx
  • 浏览: 776982 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

Redis主从复制

阅读更多

         Redis的主从复制的配置很简洁,而且支持多级Master/Slave,比如B是A的slave,C是B的Slave。下面以单台机器为例说明

Master/Slave配置

        一个Redis服务实例需要一个配置文件,因此启动slave,只需要复制master的配置文件,然后做少量修改即可。假设master监听1010端口,slave监听2020端口,假设复制好的slave的配置文件名为slave.conf。

修改slave.conf以下两项的值

port  2020
dbfilename slave.rdb

在slave.conf加入

slaveof 127.0.0.1 1010  (这个表示,他是127.0.0.1 1010的slave服务)

启动master和slave,然后写入数据到master,读取slave,可以看到数据被复制到slave了。

用途:数据备份,读写分离等等


Redis 性能( 摘自官方测试描述
在 50 个并发的情况下请求 10w 次,写的速度是 110000
次/s,读的速度是 81000 次/s
测试环境:
1. 50 个并发,请求 100000 次
2. 读和写大小为 256bytes 的字符串
3. Linux2.6 Xeon X3320 2.5GHz 的服务器上
4. 通过本机的 loopback interface 接口上执行


Redis介绍

      redis是一个key/value内存数据库,数据可以异步复制到磁盘,性能非常高,都知道memcached的性能很好,redis的读写能力不逊于memcached,甚至还要强。除此外,redis具有memcached的很多没有的强大特性。memcached数据无法持久化,全部是纯内存模式,不支持主从复制,数据的操作接口很有限。相同的是,两者的负载均衡策略都一样,客户端基于一致性哈希选择服务器。redis的支持的数据类型和数据操作很丰富,他的值可以是 string(字符串)、list(列表)、sets(集合)或者是 ordered sets(被排序的集合),所有的数据类型都具有 push/pop、add/remove、执行服务端的并集、交集、两个 sets 集中的差别等等操作,这些操作都是具有原子性的,Redis 还支持各种不同的排序能力。


Redis 安装及配置
下载 Redis:wget http://redis.googlecode.com/files/redis-2.0.0-rc4.tar.gz
james@james-desktop: ~/src]$ tar xvzf redis-2.0.0-rc4.tar.gz
james@james-desktop: ~/src]$ cd redis-2.0.0-rc4
james@james-desktop: ~/src/redis-2.0.0-rc4]$ make
james@james-desktop: ~/src/redis-2.0.0-rc4]$ mkdir ~/redis-2.0.0
james@james-desktop: ~/src/redis-2.0.0-rc4]$cp redis-server ~/redis-2.0.0
james@james-desktop: ~/src/redis-2.0.0-rc4]$cp redis-benchmark ~/redis-2.0.0
james@james-desktop: ~/src/redis-2.0.0-rc4]$cp redis-cli ~/redis-2.0.0
james@james-desktop: ~/src/redis-2.0.0-rc4]$cp redis.conf ~/redis-2.0.0
james@james-desktop: ~/src/redis-2.0.0-rc4]$ cd ~/redis-2.0.0/


配置 redis.conf 配置文件:

#是否作为守护进程运行
daemonize yes
#配置 pid 的存放路径及文件名,默认为当前路径下
pidfile redis.pid
#Redis 默认监听端口
port 6379
#客户端闲置多少秒后,断开连接
timeout 300
#日志显示级别
loglevel verbose
#指定日志输出的文件名,也可指定到标准输出端口
logfile stdout
#设置数据库的数量,默认连接的数据库是 0,可以通过 select N 来连接不同的数据库
databases 16
#保存数据到 disk 的策略
#当有一条 Keys 数据被改变是,900 秒刷新到 disk 一次
save 900 1
#当有 10 条 Keys 数据被改变时,300 秒刷新到 disk 一次
save 300 10
#当有 1w 条 keys 数据被改变时,60 秒刷新到 disk 一次
save 60 10000
#当 dump .rdb 数据库的时候是否压缩数据对象
rdbcompression yes
#dump 数据库的数据保存的文件名
dbfilename dump.rdb
#Redis 的工作目录
dir /home/falcon/redis-2.0.0/
########### Replication #####################
#Redis 的复制配置
# slaveof <masterip> <masterport>
# masterauth <master-password>
############## SECURITY ###########
# requirepass foobared
############### LIMITS ##############
#最大客户端连接数
# maxclients 128
#最大内存使用率
# maxmemory <bytes>
########## APPEND ONLY MODE #########
#是否开启日志功能
appendonly no
# 刷新日志到 disk 的规则
# appendfsync always
appendfsync everysec
# appendfsync no
################ VIRTUAL MEMORY ###########
#是否开启 VM 功能
vm-enabled no
# vm-enabled yes
vm-swap-file logs/redis.swap
vm-max-memory 0
vm-page-size 32
vm-pages 134217728
vm-max-threads 4
############# ADVANCED CONFIG ###############
glueoutputbuf yes
hash-max-zipmap-entries 64
hash-max-zipmap-value 512
#是否重置 Hash 表
activerehashing yes
 

 

启动 Redis
james@james-desktop: ~/redis-2.0.0$ ./redis-server redis.conf
数据操作API可以参考官方网站,这里不介绍。

分享到:
评论

相关推荐

    Redis主从复制和集群配置

    ### Redis主从复制和集群配置详解 #### 一、Redis主从复制原理及配置 **1.1 概述** Redis的主从复制机制是一种重要的数据同步方式,它支持一个或多个从数据库(slave)与主数据库(master)之间进行数据同步。其中,...

    Redis主从复制以及主从复制技术原理.docx

    Redis 主从复制技术原理 概述 Redis 是一个开源的使用 ANSI C 语言编写、支持网络、可基于内存亦可持久化的日志型、Key-Value 数据库,并提供多种语言的 API。Redis 主从复制是指将一台 Redis 服务器的数据,复制到...

    redis主从复制集群

    ### Redis 主从复制集群知识点详解 #### 一、Redis 主从复制概述 Redis 主从复制是一种数据冗余机制,主要用于实现读写分离、负载均衡以及数据备份等目的。通过搭建主从复制集群,可以有效避免单点故障问题,并且...

    redis主从复制活动图

    描述redis主从复制的过程中的各种细节,包括各个阶段所使用的事件处理函数

    redis常用命令,redis配置文件,redis持久化,redis事务,redis主从复制,jedis的使用

    下面是对 Redis 的常用命令、配置文件、持久化、事务、主从复制、Jedis 使用的详细讲解。 Redis 常用命令 Redis 提供了很多有用的命令来管理和操作数据。下面是一些常用的 Redis 命令: * SET key value:设置...

    LAMP架构+Redis主从复制.docx

    LAMP架构+Redis主从复制 本文档主要介绍了LAMP架构的安装和配置,以及Redis主从复制的设置。LAMP架构是指Linux操作系统、Apache HTTP服务器、MySQL数据库和PHP编程语言的组合,而Redis则是一个开源的、基于内存的...

    Redis主从复制+哨兵配置手册.docx

    Redis 主从复制和哨兵配置手册 Redis 主从复制是一种高可用性解决方案,可以确保数据的安全和可靠性。在这个手册中,我们将详细介绍 Redis 主从复制的配置和哨兵的配置。 环境准备 在开始配置 Redis 主从复制之前...

    第02篇:Redis主从复制getshell1

    1、生成恶意.so文件,下载RedisModules-ExecuteCommand使用make编译即可生成 1、监听本地1234端口 2、将Redis服务器设置

    通过SSRF操作Redis主从复制写Webshell_R3start1

    1.使用 DICT 协议添加一条测试记录 2.设置保存路径 3.设置保存文件名 4.保存 1.连接远程主服务器 2.设置保存路径 3.设置保存文件名 4.保存

    深入剖析Redis主从复制.pdf

    本文将深入探讨Redis主从复制的机制,包括全同步和部分同步的过程,以及积压空间在主从复制中的作用。 在Redis主从复制中,有两种同步方式:全同步和部分同步。全同步发生在主从服务器初次建立连接或从服务器需要...

    windows下redis主从复制文件

    windows下redis主从复制。一个master,两个slave。附带博客介绍https://blog.csdn.net/xixiyuguang/article/details/105121660

    Redis主从复制教程与实战

    Redis主从复制,是指将一台Redis服务器的数据,复制到其他的Redis服务器。前者称为主节点(master),后者称为从节点(slave),数据的复制是单向的,只能由主节点到从节点。 默认情况下,每台Redis服务器都是主节点;且...

    redis 主从切换 实现HA 的方法和工具

    Redis主从复制是其HA的基础,它允许一个Redis实例(主节点)的数据被多个实例(从节点)实时同步。当主节点出现问题时,可以快速切换到一个从节点继续提供服务。以下是主从复制的基本步骤: 1. 配置主节点:在主...

    redis主从复制过程.rar

    本压缩包中的"redis主从复制过程.pdf"文件详细介绍了Redis的主从复制流程。以下是关于Redis主从复制的关键知识点: 1. **复制的角色**: - 主服务器(Master):负责接收并处理客户端的写请求,更新数据。 - 从...

    2、redis主从复制以及密码、配置文件启动1

    在本例中,我们将探讨如何设置Redis主从复制,配置密码保护,通过配置文件启动Redis,并引入Sentinel哨兵系统来实现故障切换。 首先,我们需要准备至少三个Redis实例,一个作为主节点(master),两个作为从节点...

    NoSQL之Redis主从复制集群部署.pdf

    NoSQL之Redis主从复制集群部署,即通过搭建Redis主从复制来形成高可用性、高可扩展性的集群系统。在Redis集群中,一个主服务器可以有多个从服务器,主服务器负责处理写操作并复制数据到从服务器,而从服务器则用于...

Global site tag (gtag.js) - Google Analytics