Redis RDB持久化

redis持久化 redis提供了两种把内存数据持久化到磁盘的方式,RDB快照方式和AOF日志方式。 不论使用那种方式,都无法保证redis数据一点都不丢失。rdb只是redis在某一时刻的数据快照snapshot,数据丢失程度主要取决于
发表在 redis | 留下评论

kafka扩容节点和partitions迁移

kafka的扩容难点: 1)主要在于增加机器之后,数据需要rebalance到新增的空闲节点,即把partitions迁移到空闲机器上。 kafka提供了bin/kafka-reassign-partitions.sh工具,完成parttition的迁移。 2)kafka的集群的
发表在 kafka | 标签为 , | 留下评论

redis cluster创建

redis cluster集群的创建可以用redis-trib.rb工具快速完成。这里主要是手动搭建一个集群的过程,简单介绍一下集群构建原理。 1 配置redis节点 redis cluster集群至由3个redis节点构成。在redis配置文件中开启cluster
发表在 redis | 标签为 | 留下评论

redis sentinel基本命令与参数

1、redis基本命令 1)获取sentinel的状态 (1)info 查看sentinel的zhuangtai (2)sentinel masters 获取sentinel中监控的所有master的节点 (3)sentinel master 获取master-name节点redis的状态
发表在 redis | 留下评论

redis sentinel failover测试

1、Setinel的参数配置 1) 主观下线时间(down-after-milliseconds):20s,20s没有收到redis的任何回复,sentinel认为redis已经下线。 2) 客观下线:sentinel集群中一半以上的节点都确认了主观下线,redis将进入
发表在 redis | 标签为 , , , | 留下评论

关于tcp socket出现的”connection reset by peer“和“broken pipe”

在socket通信过程中,经常发现客户端或者服务器的日志中出现“broken pipe”或者“connection reset by peer”的错误提示。之前一直以为自己理解了这两个错误异常提示所包含的意义,而实际理解完全错误。我的错误理解和
发表在 os/linux | 留下评论

如何寻找iowait元凶

最近在生产上,有实时计算的torm机器的磁盘oiwait间断性升高。这不是很正常的现象,storm 的数据直接通过网络进入内存,数据在内存流转。也就是storm并不会大量的读写磁盘文件,除了storm的Topology的日志会写到磁盘
发表在 os/linux | 留下评论

redis/twemproxy 客户端连接异常

对于一个DBA,客户端连接异常问题可以说是家常便饭的事情,处理多了都想吐。 root cause无疑发生在三个地方,先找自身的原因,依次排查下去: 1)服务器端db的负载,如果负载太高,创建socket太慢引起超时。另外服务
发表在 redis | 标签为 | 一条评论

redis主从复制(4)— client buffer

1、 client buffer的设计 redis server以单进程的方式处理接收到的请求,而redis完成请求有些工作比较慢,比如网络IO和磁盘IO等比较慢的操作。redis为了提高处理客户端请求的响应时间,做了很多优化。比如网络io和磁
发表在 redis | 标签为 , | 留下评论

redis主从复制(3)— 复制超时

1、repl-timeout 前两篇[1]关于redis主从复制的文章解释了一些因为slave replication buffer或者replication backlog参数的错误配置(或者默认参数值)导致主从复制中断的现象。redis里面的repl-timeout参数值也太小
发表在 redis | 标签为 , | 留下评论