导读跟大家讲解下有关如何解决redis连接超时问题,相信小伙伴们对这个话题应该也很关注吧,现在就为小伙伴们说说如何解决redis连接超时问题
跟大家讲解下有关如何解决redis连接超时问题,相信小伙伴们对这个话题应该也很关注吧,现在就为小伙伴们说说如何解决redis连接超时问题,小编也收集到了有关如何解决redis连接超时问题的相关资料,希望大家看到了会喜欢。
问题描述:
redis连接超时然后定位到redis配置文件目录被删除接着尝试重启redis发现连接中断未启动成功。
报错:
查看redis的输出日志。出现下图所示的报错:
根据提示在/etc/sysctl.conf文件中添加vm.overcommit_memory = 1
修改其大透明页并将调整redis的timeout从300到500重启正常;
(学习视频分享:redis视频教程)
echo never > /sys/kernel/mm/transparent_hugepage/enabled
关于vm.overcommit_memory
它是 内存分配策略可选值:0、1、2。0 表示内核将检查是否有足够的可用内存供应用进程使用;如果有足够的可用内存内存申请允许;否则内存申请失败并把错误返回给应用进程。1 表示内核允许分配所有的物理内存而不管当前的内存状态如何。2 表示内核允许分配超过所有物理内存和交换空间总和的内存
关于Overcommit和OOM
世界国家领土排名Linux对大部分申请内存的请求都回复"yes"以便能跑更多更大的程序。因为申请内存后并不会马上使用内存。这种技术叫做 Overcommit。当linux发现内存不足时会发生OOM killer(OOM=out-of-memory)。它会选2020年小雪择杀死一些进程(用户态进程不是内核线程)以便释放内存。当oom-killer发生时linux会选择杀死哪些进程选择进程的函数是oom_badness函数(在mm/oom_kill.c中)该 函数会计算每个进程的点数(0~100超拽网名女生0)。点数越高这个进程越有可能被杀死。每个进程的点数跟oom_score_adj有关而且 oom_score_adj可以被设置(-1000最低1000最高)。
关于/sys/kernel/mm/transparent_hugepage/enabled
透明大页介绍Transparent Huge Pages的一些官方介绍资料:Transparent Huge Pages (THP) are enabled by default in RHEL 6 for all applications. The kernel attempts to allocate hugepages whenever possible and any Linux process will receive 2MB pages if the mmap region is 2MB naturally aligned. The main kernel address space itlf is mapped with hugepages, reducing TLB pressure from kernel code. For general information on Hugepages, e: What are Huge Pages and what are the advantages of using them?The kernel will always attempt to satisfy a memory allocation using hugepages. If no hugepages are available (due to non availability of physically continuous memory for example) the kernel will fall back to the regular 4KB pages. THP are also swappable (unlike hugetlbfs). This is achieved by breaking the huge page to smaller 4KB pages, which are then swapped out normally.But to u hugepages effectively, the kernel must find physically continuous 所欲有甚于生者areas of memory big enough to satisfy the request, and also properly aligned. For this, a khugepaged kernel thread has been added. This thread will occasionally attempt to substitute smaller pages being ud currently with a hugepage allocation, thus maximizing THP usage.In urland, no modifications to the applications are necessary (hence transparent). But there are ways to optimize its u. For applications that want to u hugepages, u of posix_memalign can also help ensure that large allocations are aligned to huge page (2MB) boundaries.Also, THP is only enabled for anonymous memory regions. There are plans to add support for tmpfs and page cache. THP tunables are found in the /sys tree under /sys/kernel/mm/redhat_transparent_hugepage.
查看是否启用透明大页
cat /sys/kernel/mm/transparent_hugepage/enabled[always] madvi never使用命令查看时如果输出结果为[always]表示透明大页启用了。[never]表示透明大页禁用、[madvi]表示(只在MADV_HUGEPAGE标志的VMA中使用THP如何HugePages_Total返回0也意味着标准大页禁用了(注意传统/标准大页和透明大页的区别)透明大页(THP)管理和标准/传统大页(HP)管理都是操作系统为了减少页表转换消耗的资源而发布的新特性虽然ORACLE建议利用大页机制来提高数据库的性能但是ORACLE却同时建议关闭透明大页管理。这二者的区别在于大页的分配机制标准大页管理是预分配的方式而透明大页管理则是动态分配的方式。[[emailprotected] ~]# grep -i HugePages_Total /proc/meminfo HugePages_Total: 0cat /proc/sys/vm/nr_hugepages返回0也意味着传统大页禁用了(传统大页和透明大页)。[[emailprotected] ~]# cat /pr简单qq分组大全oc/sys/vm/nr_hugepages0
相关推荐:redis数据库教程
以上就是如何解决redis连接超时问题的详细内容!
来源:php中文网
本文发布于:2023-02-26 19:10:31,感谢您对本站的认可!
本文链接:https://www.wtabcd.cn/fanwen/zuowen/167740983156499.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文word下载地址:互联网常识:如何解决redis连接超时问题.doc
本文 PDF 下载地址:互联网常识:如何解决redis连接超时问题.pdf
留言与评论(共有 0 条评论) |