Linux的swappiness的配置

Arch Linux云服务器Swap文件配置与swappiness调优实战 Swap(交换空间)是Linux内存管理的关键机制,用于在物理内存不足时暂存非活跃页面,防止OOM Killer强制终止进程。其核心原理涉及内核页面回收策略、vm.swappiness参数调控及sysctl底层参数协同。技术价值在于提升小内存云服务器(如1–2GB VPS)的稳定性与容错能力,尤其适用于Docker构建、PHP/Node.js服务、内核编译等瞬时内存高峰场景。本文聚焦Arch Linux这一按需加载、零默认swap的极简发行版,深入解析swap file动态创建、权限加固、云盘I/O适配,以 阅读详情
如果你有一个非常重要的java程序,而且是线上服务,对delay要求很高。但是 偶 尔发现系统在负载很轻变化到负载较重的时候响应时间有点慢, 或者某些 冷 门 query比较慢。你用工具发现os有不少page fault,但是你知道机器有足 够的 内存 分配给JVM,那么可能需要调整一下swappiness了。
swappiness

http://en.wikipedia.org/wiki/Swappiness

操作系统会根据一定的策略自动换出不常使用的内存,这样的优点是有足够的空闲内存给新的程序使用。但有的时候我们有一些关键程序,需要很快的响应时间。但是它可能有些内存不是经常使用,而是偶尔用到,万一用到的时候不在内存,那么就会产生page fault。

我们可以根据上面的wiki调整这个参数

JVM记得设置 -Xmx == -Xms

调整某个进程的swappiness

但是上面的方法有个缺点,它的修改是全局的。我们其实是想某些“关键”程序的内存不被换出,那些不那么重要的程序最好还是换出去。那上面的方法就不行了。

http://unix.stackexchange.com/questions/10214/per-process-swapiness-for-linux

更好的方法

前面的设置非常麻烦,而且需要修改Linux的配置。

mlockall

http://linux.die.net/man/2/mlockall

这正是我们想要的,但是我们需要在Java里实现

JNA

https://github.com/twall/jna

Apache Cassandra就使用了这个方法来保证JVM的内存不被换出


Linux服务器性能调优:如何根据内存和负载智能配置 swapfile 大小与 swappiness? 本文深入探讨Linux服务器性能调优中swapfile的智能配置策略,涵盖内存管理、交换空间原理及swappiness参数优化。针对不同服务器负载(如数据库、Web应用、批处理)提供定制化swapfile大小建议,并详细介绍动态调整和监控技术,帮助运维工程师提升系统稳定性与性能。 阅读详情

相关推荐

Isograph Reliability Workbench 14实战:从零构建故障树分析模型

本文以“马达不转”为例,手把手教你使用Isograph Reliability Workbench 14从零构建故障树分析模型。内容涵盖创建工程、定义顶事件、添加逻辑门与基础事件等核心步骤,并介绍了模型检查与定性定量分析,帮助你系统掌握这一强大的可靠性工程工具。

weixin_29309213的博客 359

深度学习理论与实践:一个开源宝藏

深度学习理论与实践:一个开源宝藏 去发现同类优质开源项目:https://gitcode.com/ 在人工智能领域中,深度学习是一把开启未来的关键钥匙。无论你是初学者还是经验丰富的开发者, 这个项目都值得你关注和探索。它是一个全面的、深入浅出的深度学习教程,旨在帮助你理解理论,掌握实践,并应用于实际问题。 项目简介 该项目由资深AI开发者 Fancyerii 创建,内容涵盖了深度学习的基础知识、模...

gitblog_00027的博客 321

用PyTorch实战清华SSVEP数据集:手把手教你搭建第一个脑机接口分类模型(附完整代码)

本文详细介绍了如何使用PyTorch实战清华大学SSVEP数据集,从数据预处理到CNN模型构建的全流程。通过手把手教学,帮助读者搭建第一个脑机接口分类模型,特别针对数据维度转换等关键难点提供可视化解析,并附完整代码实现。

weixin_42566121的博客 352

Linux内核参数vm.swappiness配置

内核参数 vm.swappiness 控制换出运行时内存的相对权重,参数值大小对如何使用swap分区有很大联系。值越大,表示越积极使用swap分区,越小表示越积极使用物理内存。默认值 swappiness=30,表示当进程使用内存达到系统内存的60%或者还剩40%空闲时开始使用交换分区。swappiness=0 的时候表示最大限度使用物理内存,然后才是 swap空间;swappiness=100 的时候表示积极使用swap分区,并把内存上的数据及时搬运到swap空间。

初心不改 3101

[统计模型] 基于R的潜在剖面分析(LPA)

本文主要介绍基于R进行潜在剖面分析(Latent Profile Aanalysis, LPA)。 关于潜在类别分析LCA/潜在剖面分析LPA的概念和区别,可以参考一下这篇文章: 潜在类别分析LCA \潜在剖面分析LPA介绍https://www.jianshu.com/p/4c830094131e?utm_campaign=maleskine 但是此文对潜类别分析的阐释还比较生涩,而且没有具体的代码编写、模型优选等内容。本文旨在丰富LPA的内容,并希望和大家交流、共同进步。 1. 什么是潜类别分.

bigstar863的博客 1万+

全网最全医学图像数据汇总

本仓库汇总了多个领域的医学图像开源数据集,涵盖CT、MRI、超声、内窥镜、病理、多模态、PET、OCT以及皮肤镜等多种成像技术。每个数据集均详细列出了任务类型、部位、格式、数量及下载链接,旨在为医学图像研究者提供便捷的资源导航。⚠️:这些数据集仅适用于学术研究用途。

2401_83173765的博客 3319

Linux交换分区Swappiness配置

swappiness的大小影响swap分区的使用。该值只是一个指标,虚拟内存的使用还受限于其他指标!

miracleshl的博客 2528

工业金属表面缺陷检测:4种光学成像方案(明/暗/漫/背光)选型与实测对比

本文深入探讨工业金属表面缺陷检测中的4种光学成像方案(明/暗/漫/背光),详细解析其物理原理、适用场景及实测效果。通过对比不同照明方案在铝合金轮毂、不锈钢餐具等实际工业场景中的表现,提供科学的选型决策树,帮助提升缺陷检出率至99%以上,为计算机视觉在工业质检领域的应用提供实用指南。

weixin_33624741的博客 388

实战 | 手把手教你搭一个机器翻译模型


 
 
 
 
 
 
 作者 | 李理环信人工智能研发中心 VP,十多年自然语言处理和人工智能研发经验。主持研发过多款智能硬...

优快云 人工智能 8555

2025-03-21(DS复习): Databricks 的技术架构

Databricks 的技术架构以 ​为核心,构建了一套高度集成、可扩展且支持多云环境的统一分析平台。其架构设计注重存储与计算的深度融合,并通过丰富的服务层功能简化了数据工程、机器学习和数据科学的工作流。

baidu_24377669的博客 1428

软件测试学习笔记(二)图覆盖

软件测试学习笔记(二)图覆盖 课程链接软件测试_中国大学MOOC 2.1 测试中的图 2.2 图覆盖准则 1、什么是图? 点的集合和边的集合。点或者结点,有穷非空的集合。边是点对。 2、图为什么在软件测试中具有重要地位? 所谓软件测试就是将软件变作一张图,然后覆盖它,不仅仅是软件,图更是计算机科学重要的结构。 3、软件测试中的图是如何得到的? 常见的图可以来自源代码,常见的是控制流图,还有各种各样...

DZFinder的博客 1420

[Linux]设置swap分区以及相关问题解决方法总结

设置swap分区以及相关问题解决方法总结

GY_1202的博客 1万+

OpenClaw实战系列07:定时任务与自动化工作流实战——让AI从“被动响应”到“主动执行”

通过本文的学习,你已经将 OpenClaw 从“被动应答”升级为“主动执行”的自动化引擎。定时简报:每天8点自动生成行业简报推送飞书/钉钉GitHub事件触发:PR合并自动触发Code ReviewAgent间协作:数据采集→分析→报告全自动流水线系统监控:定时检查服务器状态,异常自动告警核心收获掌握 OpenClaw 内置 Cron 系统的三种调度模式学会 Webhook 配置和事件触发机制理解 Agent 间通信的两种方式(sessions_spawn / sessions_send)

PeterPan的博客 691

Linux性能调优:Swappiness值配置全攻略

swappiness是一个内核参数,其值范围从0到100。它定义了Linux内核在将数据从物理内存移动到swap空间时的偏好程度。swappiness值为0表示尽可能不使用swap空间,除非物理内存完全用完;值为100表示内核会积极地使用swap空间,即使物理内存还有很多可用空间。

2401_85342379的博客 3187

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

redhat7扩容linux,RedHat7中swappiness配置问题

在RedHat7中配置中,我们配置了swappiness[root@localhost ~]# cat /proc/sys/vm/swappiness30[root@localhost ~]# vi /etc/sysctl.conf[root@localhost ~]# sysctl -pvm.swappiness = 10vm.min_free_kbytes = 1048576[root@loc...

weixin_42548752的博客 198

老版QQ原生表情gif动态

这是老版的QQ表情,不过全是动态的的,Windows照片查看器是不会动的,可以右击用浏览器打开查看,再说一遍是老版的,只是分享给宁愿用老版也要动态的人。

Linux下设置swappiness参数来配置内存使用到多少才开始使用swap分区(转)

swappiness的值的大小对如何使用swap分区是有着很大的联系的。swappiness=0的时候表示最大限度使用物理内存,然后才是swap空间,swappiness=100的时候表示积极的使用swap分区,并且把内存上的数据及时的搬运到swap空间里面。linux的基本默认设置为60,具体如下: cat /proc/sys/vm/swappiness#60 也就是说,你的内存在使...

weixin_30879833的博客 109

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

/etc/sysctl.conf 文件没配置swappiness的值

这个默认值适合大多数通用场景,但针对不同的工作负载和应用,有时可能需要调整 `swappiness` 值来优化系统性能。例如,对于内存密集型应用,可能希望降低这个值以减少交换操作,从而提高性能。通常情况下,如果没有明确配置 `swappiness` 值,Linux 系统会使用默认值,这个默认值通常是 60。这意味着当系统的可用内存降到总量的 40% 时,系统会开始更积极地使用交换空间(swap space)。- 值为 0 表示系统会尽可能少地使用交换空间,只有在物理内存完全用尽时才会使用 swap。

靡不有初,鲜克有终 331

Linux服务器内存优化实战:如何正确配置swapfile的swappiness值与大小?

本文详细介绍了Linux服务器内存优化中swapfile的配置与swappiness调优方法。通过实战案例,解析如何创建swapfile、动态调整swappiness值,以及应对内存危机的紧急处理流程,帮助运维人员有效提升服务器性能与稳定性。

weixin_32466193的博客 266

linux swap空间的swappiness=0

修改linux swap空间的swappiness,降低对硬盘的缓存    linux 会使用硬盘的一部分做为SWAP分区,用来进行进程调度--进程是正在运行的程序--把当前不用的进程调成‘等待(standby)‘,甚至‘睡眠(sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就躺到SWAP分区睡大觉,把内存空出来让给‘活动’的进程。   如果内存够大,应当告诉 li

wulantian的专栏 1万+

linux-swappiness参数的作用及设置

linux 会使用硬盘的一部分做为SWAP分区,用来进行进程调度--进程是正在运行的程序--把当前不用的进程调成‘等待(standby)‘,甚至‘睡眠(sleep)’,一旦要用,再调成‘活动(active)’,睡眠的进程就躺到SWAP分区睡大觉,把内存空出来让给‘活动’的进程。  如果内存够大,应当告诉 linux 不必太多的使用 SWAP 分区, 可以通过修改 swappiness 的数值。sw...

weixin_34068198的博客 178

修改Linux内核参数vm.swappiness

vm.swappiness的值越大,表示越积极使用swap分区,越小表示越积极使用物理内存。默认值swappiness=60。 1、查看: cat /proc/sys/vm/swappiness 2、临时调整: sysctl vm.swappiness = 10 cat /proc/sys/vm/swappiness 3、永久调整: vi /etc/sysctl.conf 修改vm.sw...

andyguan01_2的博客 3万+

swappiness

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34355715的博客 255

宋宝华:linux内存中 swappiness=0究竟意味着什么?

本文解释linux内存中swappiness的作用,以及linux内存中swappiness=0究竟意味着什么。内存回收我们都知道,Linux一个进程使用的内存分为2种:file-backed pages(有文件背景的页面,比如代码段、比如read/write方法读写的文件、比如mmap读写的文件;他们有对应的硬盘文件,因此如果要交换,可以直接和硬盘对应的文件进行交换),此部分页面进page cacheanonymous pag

宋宝华 6317
上一篇: Java的字符集和编码
下一篇: 使用Java堆外内存(自己管理内存)的一些方法
fancyerII
博客等级 码龄23年 48粉丝 164原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值