redis的几个优化点
1. redis读写速度慢
可以将redis单实例改为redis集群
2. redis报OOM
redis内存溢出,调大redis内存:增加redis.conf中的maxmemory 的值。如果redis服务器内存不足,还需要增加内存硬件资源
3. 调优redis内存
通过配置内存淘汰机制来进行调优,具体如下:
在配置文件redis.conf 中,可以通过参数 maxmemory <bytes> 来设定最大内存(通过配置redis.conf中的maxmemory这个值来开启内存淘汰功能),当数据内存达到 maxmemory 时,便会触发redis的内存淘汰策略(我们一般会将该参数设置为物理内存的四分之三)。
如果使用6个节点的redis集群,redis服务器总内存64G,可为每个节点分配8G内存。即配置:maxmemory 8G
如果应用设置内存失效时间,可以采用 volatile-lru策略,即配置:maxmemory-policy volatile-lru (# maxmemory-policy noeviction为redis.conf中默认配置)
#redis配置,请根据实际情况修改
redis.host=127.0.0.1
redis.port=6379
#过期时间半小时
redis.timeout=1800s
redis.password=Tiye@123!
Redis提供了下面几种淘汰策略供用户选择,其中默认的策略为noeviction策略:
noeviction:当内存使用达到阈值的时候,所有引起申请内存的命令会报错。
allkeys-lru:在主键空间中,优先移除最近未使用的key。
volatile-lru:在设置了过期时间的键空间中,优先移除最近未使用的key。
allkeys-random:在主键空间中,随机移除某个key。
volatile-random:在设置了过期时间的键空间中,随机移除某个key。
volatile-ttl:在设置了过期时间的键空间中,具有更早过期时间的key优先移除。
最新文章
- xml.etree.ElementTree对CDATA的输出
- tomcat server容器解读
- java:快速文件分割及合并
- (笔记)VC6插件安装--Unable to register this add-in because its DllRegisterServer returns an error
- hibernate将本地SQL查询结果封装成对象
- instancetype
- Servlet课程0425(七) 到数据库中去验证用户,同时防止SQL注入漏洞
- mysql学习笔记2
- 什么是DNN,Dotnetnuke介绍和功能简介
- oracle取分组的前N条数据
- Windows 2012 AD配置
- 电商Banner设计背后的12个人性的秘密
- 云如何让App开发更简单?
- Aras前端的一些知识
- xshell连接ubuntu系统
- CCF CSP 201604-1 折点计数
- Git冲突:commit your changes or stash them before you can merge.
- day39-异常处理
- .net图表之ECharts随笔03-热力地图
- Redis连接的客户端(connected_clients)数过高或者不减的问题解决方案
热门文章
- 【JAVA】学习路径64-补充-编写一个会抛异常的方法
- with function 语法支持
- Linux_etc-passwd文件总结
- docker-compose概述--翻译
- Taurus.MVC-Java 版本打包上传到Maven中央仓库(详细过程):4、Maven项目转换与pom.xml配置
- ClangFormat配置备份
- 【Shashlik.EventBus】.NET 事件总线,分布式事务最终一致性
- 如何为 SAST 工具设置误报基准?
- 《Java基础——抽象与接口》
- JDK8中String的intern()方法详细解读【内存图解+多种例子+1.1w字长文】