前一段时间。开发环境反馈,Redisserver訪问很慢,每一个请求要数秒时间,重新启动之后2~3天又会这样。

我查看了一下Linux的性能,没有什么问题。

通过

# redis-cli --latency

发现訪问Redis确实非常慢,运行info要几秒时间。里面有个參数已连接的client几万个,通过

Redis>client list

查看到非常多client的age都非常大,一直没有释放。于是怀疑是不是和这个有关。由于版本号是2.8.6,无法通过client一次性kill掉全部的连接,仅仅能写一个程序,一个一个地kill掉(

CLIENT KILL addr:port)。但问题依旧存在。

于是进一步查看配置文件,发现SHNAPSHOT是默认打开状态。

save 900 1

save 300 10

save 60 10000

由于我们缓存是用于Session保存,不推荐快照保存。特别是在Redis是VM机器上,对总体的性能影响会非常大。于是參考我们的手冊凝视:

################################
快照 #################################

# 保存数据到磁盘,格式例如以下:

#  save <seconds> <changes>

#   指出在多长时间内,有多少次更新操作。就将数据同步到数据文件rdb。

#   相当于条件触发抓取快照,这个能够多个条件配合

#   比方默认配置文件里的设置,就设置了三个条件

#  save 900 1  900秒内至少有1个key被改变

#  save 300 10  300秒内至少有300个key被改变

#  save 60 10000  60秒内至少有10000个key被改变

# Session缓存server不使用快照,都凝视

# save 900 1

# save 300 10

# save 60 10000

重新启动Redis之后。观察了一个月时间。再没有反馈到性能问题了。

另外在没有使用client的PUB/SUB的情况下,建议參考以下的參数。设置client的连接超时,在300毫秒后,假设不用,服务端会自己主动关闭连接,释放资源。默认是关闭的。

# 设置client连接时的超时时间,单位为秒。

当client在这段时间内没有发出不论什么指令。那么关闭该连接

# 0是关闭此设置

# 推荐5分钟。

timeout 300

# TCP keepalive

# 在Linux上,指定值(秒)用于发送ACKs的时间。注意关闭连接须要双倍的时间。

默觉得0。

# 推荐60。

tcp-keepalive 60

注:

Redis 2.8.12已经能够通过client类型,一次性kill到全部相关的连接。

Redis性能调优:保存SNAPSHOT对性能的影响的更多相关文章

  1. [Spark性能调优] 第一章:性能调优的本质、Spark资源使用原理和调优要点分析

    本課主題 大数据性能调优的本质 Spark 性能调优要点分析 Spark 资源使用原理流程 Spark 资源调优最佳实战 Spark 更高性能的算子 引言 我们谈大数据性能调优,到底在谈什么,它的本质 ...

  2. JVM性能调优2:JVM性能调优参数整理

    序号 参数名 说明 JDK 默认值 使用过 1 JVM执行模式 2 -client-server 设置该JVM运行与Client 或者Server Hotspot模式,这两种模式从本质上来说是在JVM ...

  3. spark 性能调优(一) 性能调优的本质、spark资源使用原理、调优要点分析

    转载:http://www.cnblogs.com/jcchoiling/p/6440709.html 一.大数据性能调优的本质 编程的时候发现一个惊人的规律,软件是不存在的!所有编程高手级别的人无论 ...

  4. JVM性能调优(4) —— 性能调优工具

    前序文章: JVM性能调优(1) -- JVM内存模型和类加载运行机制 JVM性能调优(2) -- 垃圾回收器和回收策略 JVM性能调优(3) -- 内存分配和垃圾回收调优 一.JDK工具 先来看看有 ...

  5. MySql(九):MySQL性能调优——Schema设计的性能优化

    一.高效的模型设计 先了解下数据库设计的三大范式 第一范式:要求有主键,并且要求每一个字段原子性不可再分 第二范式:要求所有非主键字段完全依赖主键,不能产生部分依赖 第三范式:所有非主键字段和主键字段 ...

  6. hbase性能调优(1)

    hbase性能调优 标签: hbase 性能调优 | 发表时间:2014-05-17 15:10 | 作者:无尘道长 分享到: 出处:http://www.iteye.com 一.服务端调优 1.参数 ...

  7. JVM性能调优监控工具专题一:JVM自带性能调优工具(jps,jstack,jmap,jhat,jstat,hprof)

    性能分析工具jstatjmapjhatjstack 前提概要:         JDK本身提供了很多方便的JVM性能调优监控工具,除了集成式的VisualVM和jConsole外,还有jps.jsta ...

  8. [转载]Java 应用性能调优实践

    Java 应用性能调优实践 Java 应用性能优化是一个老生常谈的话题,笔者根据个人经验,将 Java 性能优化分为 4 个层级:应用层.数据库层.框架层.JVM 层.通过介绍 Java 性能诊断工具 ...

  9. 【JAVA进阶架构师指南】之五:JVM性能调优

    前言   首先给大家说声对不起,最近属实太忙了,白天上班,晚上加班,回家还要收拾家里,基本每天做完所有事儿都是凌晨一两点了,没有精力再搞其他的了.   好了,进入正题,让我们来聊聊JVM篇最后一个章节 ...

  10. 成为Java GC专家(5)—Java性能调优原则

    并不是每个程序都需要调优.如果一个程序性能表现和预期一样,你不必付出额外的精力去提高它的性能.然而,在程序调试完成之后,很难马上就满足它的性能需求,于是就有了调优这项工作.无论哪种编程语言,对应用程序 ...

随机推荐

  1. 搞不清FastCgi与PHP-fpm之间是个什么样的关系 - SegmentFault

    搞不清FastCgi与PHP-fpm之间是个什么样的关系 - SegmentFault 搞不清FastCgi与PHP-fpm之间是个什么样的关系 3赞 踩 收藏 我在网上查fastcgi与php-fp ...

  2. WPF 自定义TextBox

    1.TextBox前加图标. 效果: <TextBox Width="300" Height="30" Style="{StaticResour ...

  3. 深入了解Nginx之Nginx与Python(1)

    6 Python和Nginx 6.1 简介FastCGI FastCGI(Fast Common Gateway Interface)是基于CGI上的改进,是CGI的一种演变产物.虽然目的是保持同样的 ...

  4. javadoc入门

    斌斌 (给我写信) 原创博文(http://blog.csdn.net/binbinxyz),转载请注明出处! java凝视 java里面有两种类型的凝视.一种是以"/*"起头,以 ...

  5. Phases of translation

    Phases of translation--翻译阶段 The C++ source file is processed by the compiler as if the following pha ...

  6. JavaSE学习总结第24天_多线程2

      24.01  JDK5之后的Lock锁的概述和使用 虽然我们可以理解同步代码块和同步方法的锁对象问题,但是我们并没有直接看到在哪里加上了锁,在哪里释放了锁,为了更清晰的表达如何加锁和释放锁,JDK ...

  7. js实现input输入框只能输入数字的功能

    <input type="text" style="ime-mode:disabled;" onpaste="return false;&quo ...

  8. thinkphp第二天

    1.使用print_r();打印数组的时候最好使用<pre>标签,可以是数组表现的更加直观. pre 元素可定义预格式化的文本.被包围在 pre 元素中的文本通常会保留空格和换行符.而文本 ...

  9. XML 学习之保存节点

    XmlDocumnet WriteTo 方法 说明: 保存xmldocument对象节点到xmlwriter(即xml文件写入流) 实例: public static void WriteXml( X ...

  10. LNMP安装包sh脚本

    Xshell 5 (Build 0719) Copyright (c) 2002-2015 NetSarang Computer, Inc. All rights reserved. Type `he ...