Redis性能优化培训课件.pptx

Redis性能优化培训课件.pptx

ID:57295345

大小:484.75 KB

页数:39页

时间:2020-08-10

Redis性能优化培训课件.pptx_第1页
Redis性能优化培训课件.pptx_第2页
Redis性能优化培训课件.pptx_第3页
Redis性能优化培训课件.pptx_第4页
Redis性能优化培训课件.pptx_第5页
资源描述:

《Redis性能优化培训课件.pptx》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库

1、Redis性能优化培训快速掌握Redis性能优化目录Redis简介Redis特性Redis性能数据指标常见性能问题分析性能优化方案性能测试Redis简介Redis是一个开源的高性能Nosql数据库,也是基于内存的Key-Value存储系统,可以用作数据库、缓存和消息中间件支持多种数据结构:字符串、哈希表、列表、集合、有序集合、位图、Hyperloglogs内置了复制,LUA脚本,LRU数据淘汰,事务和不同级别的磁盘持久化等功能通过Sentinel哨兵和Cluster自动分片集群提供高可用性Redis特性基于单线程模型实现,一个线程服务所有客户端请求,采用非阻塞式IO

2、线程安全,所有操作都是原子的,不会因并发产生数据异常速度非常快,大部分命令算法时间复杂度都是O(1)使用高耗时Redis命令很危险,会占用唯一线程的大量处理时间,导致所有的请求都被拖慢Redis性能数据指标通过Redis-cli命令行界面访问到Redis服务器,使用info命令获取丰富的Redis性能数据指标info命令输出的数据可分为10个类别,分别是:serverclientsmemorypersistencestatsreplicationcpucommandstatsclusterkeyspace重要性能指标memory输入infomemory命令,只返回与

3、内存相关的数据常用内存数据指标used_memory:已使用内存used_memory_rss:从操作系统上显示已经分配的内存总量mem_fragmentation_ratio:内存碎片率used_memory_lua:Lua脚本引擎所使用的内存大小mem_allocator:在编译时指定的Redis使用的内存分配器,可以是libc、jemalloc、tcmalloc以上指标都是以字节(byte)为单位重要性能指标CPUused_cpu_sys:55.09         --Redis服务器耗费的系统CPUused_cpu_user:26.16        --

4、Redis服务器耗费的用户CPUused_cpu_sys_children:0.02  --后台进程耗费的系统CPUused_cpu_user_children:0.01 --后台进程耗费的用户CPU重要性能指标Clients记录了已连接客户端的信息connected_clients:1           --已连接客户端的数量(不包括通过从属服务器连接的客户端)client_longest_output_list:0     --当前连接的客户端当中,最长的输出列表client_biggest_input_buf:0     --当前连接的客户端当中,最大输入缓

5、存blocked_clients:0            --正在等待阻塞命令(BLPOP、BRPOP、BRPOPLPUSH)的客户端的数量重要性能指标Stats记录了一般统计信息total_connections_received:782640     --服务器已接受的连接请求数量total_commands_processed:6401614 --服务器已执行的命令数量instantaneous_ops_per_sec:7--服务器每秒钟执行的命令数量latest_fork_usec:475--最近一次fork()操作耗费的毫秒数重要性能指标Commands

6、tats记录了各种不同类型的命令的执行统计信息记录命令执行的次数、命令耗费的CPU时间、执行每个命令耗费的平均CPU时间等等常见性能问题分析一生产系统刚开始运行阶段,系统稳定。但是运行一段时间后,发现部分时间段系统接口响应变慢。查看客户端日志经常会出现这样的错误:redis.clients.jedis.exceptions.JedisConnectionException:java.net.SocketTimeoutException:Readtimedout执行slowlog查看慢查询语句,发现有大量的keys命令操作,keys命令在大量并发情况下性能非常差正式环

7、境中,尽量避免使用keys,接下来找出使用keys的代码做优化,至此,timeout问题解决常见性能问题分析二生产环境长时间的运行后,经常会有接口返回数据失败的情况,或者是从监控上发现数据库压力某一时间暴增。查看客户端日志发现这样的错误:redis.clients.jedis.exceptions.JedisConnectionException:Couldnotgetaresourcefromthepool执行clientlist命令,发现大量的client的idle时间特别长检查配置发现timeout和tcp-keepalive均未启用(均为0),redis

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。