redis 改版的项目上线有两个月了,记录一下redis 相关的经验,也给大家一个参照:
我们的redis server是一主一从,使用R710的机器,8核心,24G内存; 每天约插入200万左右的数据,现在库里有3000万条纪录,占用了9G的内存;由于现在每天内存增长太快,担心很快会无法负载,因此写了脚本每天将过期数据删除;
现在运行中的问题:
1.redis运行基本稳定,从没有自己中断过服务,php脚本去set的话大概1秒钟能设置1万条小数据,并没有官方给出的数据高;但是修改配置后大重启服务时大概需要1到2分钟才能完全将硬盘中的数据加载到内存中去,在加载完之前,redis不能提供服务;
2.redis的默认配置中,每60秒如果纪录更改数达到1万条就需要dump到硬盘中去,但实际上由于超过了这个数,我们的redis几乎不停地在
dump数据到硬盘上;dump数据到硬盘时,我估计为了达到一个原子的效应,避免数据丢失,redis是先把数据dump到一个临时文件,然后重命名为
你在配置文件设定的数据文件名.而前面说到,加载数据要1到2分钟,dump数据应该也在1分钟左右吧;dump出来的文件差不多1到2个G;这样,服务
器几乎一直保持着每分钟写一个2G的文件的这种IO的负载;磁盘基本不闲着;
3.还是在dump中,除开磁盘不闲着以外,CPU也一路飙升:redis是fork一个子进程来dump数据到硬盘,原有进程占用30%+的CPU,而dump数据的子进程单独享用用了一个CPU核心,cpu占用100%;
4. redis在dump数据的时候,是fork子进程,这样产生一个问题:redis本向占用了9G的内存,在dump数据时又fork一个进程,子进程继承了内存分配,也占用了9G的内存….redis一下子占用了18G的内存了;
发现这些问题后,我修改了redis的配置文件,设置为30分钟内只要有一次写修改就dump数据,这样系统负载大幅减轻了.
处于设想中的想法:
主redis并不dump数据,不管写多少次都不dump到硬盘,或是这个dump的时间非常长;从redis则主要承担合理地dump数据到硬盘以起备份作用;主redis启动时先从从redis中scp或是ftp download数据回来;有待后续验证;
分享到:
相关推荐
redis运维之道
总之,《Redis开发运维实践指南》是一份全面覆盖Redis使用、应用场景和最佳实践的详细文档,不仅适合初学者,对有经验的开发运维人员也有极大的参考价值。通过本文,读者可以学习到如何更有效地使用Redis,以及如何...
总体来说,《Redis开发运维实践指南》是一本综合性的指南,它不仅提供给开发和运维人员在实际工作中的具体操作指导,也帮助他们理解背后的工作原理,以及在遇到问题时如何定位和解决。这本书为Redis的应用和维护提供...
【新浪Redis运维实战】是新浪高级DBA赵景波分享的关于新浪数据库平台在Redis运维方面的实践经验。这个分享主要涵盖了三个核心部分:新浪数据库平台概览、精细化运维和Redis Cluster Proxy。 新浪数据库平台是一个...
⾯面临的问题: 单机多实例的部署和管理成本增⼤大! 不得不⾯面对单机多版本的兼容问题! storage vs cache,需求变化多样! 需要⼯工具和流程来减少DBA误操作! 遇到故障需要能快速恢复服务
### Redis 运维之道 #### 一、Redis应用历程与部署场景 Redis作为一种高性能的键值存储系统,在近年来得到了广泛的应用和发展。随着互联网业务的爆发式增长,传统的缓存技术如Memcached等已经无法满足日益增长的...
本资源包含两个部分的内容:一本《新浪_杨海朝_redis运维之道》,这是个ppt,让你在宏观上了解redis的部署架构; 一本《新浪_杨海朝_redis经验谈》,这个写的比较详细,涉及前边ppt很多细节实现。 读者最好两本一起...
标题"redis开发运维完整版本"表明这是一个关于Redis全面学习和实践的资源包,可能包含从基础开发到高级运维的所有内容。这通常涵盖了Redis的安装配置、基本命令、持久化机制、主从复制、哨兵系统、集群搭建、性能...
### Redis运维之道知识点详解 #### 一、Redis应用历程与部署场景 - **Redis的应用历程:** Redis作为一种高性能的键值存储系统,在过去几年里经历了迅速的发展和广泛的应用。最初,Redis被用作缓存解决方案,但...
大数据与云计算培训学习资料 redis运维之道 共26页.pptx
总结来说,《Redis开发与运维》是一本全面覆盖Redis核心技术要点和实际操作的优秀参考书籍,不仅适合初学者入门学习,也适合有一定基础的开发人员和运维工程师作为进阶读物。通过阅读本书,读者可以系统地掌握Redis...
总之,《Redis开发运维实践指南》是IT从业者提升Redis技能的宝贵资源,无论你是初学者还是经验丰富的开发者,都可以从中受益,更好地利用Redis解决实际问题,提升应用性能和系统的稳定性。通过深入学习,你将能够...
以上内容涵盖了新浪Redis运维实践的主要方面,从基础架构到性能优化,再到安全与容灾,每一个环节都体现了运维团队的专业性和细致入微的工作态度。这些经验对于其他互联网企业或开发者来说,都是宝贵的参考资料。
在运维过程中,有时我们可能需要对Redis进行重建,这通常涉及到数据恢复、实例重置或者配置更新等一系列操作。以下是对Redis运维重建命令的详细解析: 1. Redis备份与恢复: - `SAVE`命令:Redis提供了`SAVE`命令...
4.redis的不同库之间切换和运维监控命令 5.redis配置的动态更新 6.redis的多用户管理 7.redis的慢日志和key的有效期设置 8.redis禁用危险命令和压测工具介绍 9.redis的两种持久化方式存储 10.redis的RDB工具分析key...
Redis,作为一个高性能的键值存储系统,被广泛应用于缓存、数据库、消息中间件等多个领域。...通过学习这些资料,你可以全面掌握Redis的使用、开发和运维,无论你是初学者还是经验丰富的开发者,都能从中受益匪浅。
阿里云专有云企业版云数据库KVStore for Redis运维指南 本指南旨在为用户提供阿里云专有云企业版云数据库KVStore for Redis的运维指南,帮助用户更好地使用和管理 KVStore for Redis 数据库。 第一部分:法律声明 ...
### 《redis运维与开发》读书笔记知识点梳理 #### 一、Redis-cli工具详解 - **基础使用**:`redis-cli`是Redis提供的命令行工具,用于与Redis服务器交互。 - `-h`: 指定Redis服务器的IP地址。 - `-p`: 指定...
Redis 在新浪的大规模运维经验 Redis 简介 Redis 是一个开源的、基于内存的、持久化的数据库,可以作为数据库、缓存和消息队列使用。Redis 的作者是 Salvatore Sanfilippo (@antirez),启动于 2009 年。Redis 的...
阿里云专有云企业版V3.6.1云数据库KVStore for Redis运维指南主要针对的是阿里云上的一款键值存储服务,即KVStore for Redis。这个版本的文档旨在为用户提供关于如何管理和维护Redis实例的专业指导,确保用户能够...