5-刘智龙-PostgreSQL与Linux内存管理.pdf

编号:713389 PDF 52页 1.06MB 下载积分:VIP专享
下载报告请您先登录!

5-刘智龙-PostgreSQL与Linux内存管理.pdf

1、题目:PostgreSQL与Linux内存管理刘智龙VM内存管理01.pages计算02.CGROUP内存管理(v1)03.CONTENTSwhats new in CG V204.VM内存管理/01VM4linux内核virtual memory子系统,虚拟内存的全局策略和行为控制ll/proc/sys/vm/*vm管理什么?-虚拟内存管理,比如地址映射,内存保护(只读、可执行权限等),共享内存管理等-物理内存管理,负责物理内存的分配,通过虚拟内存地址映射分配给进程使用(不负责直接管理物理内存)-内存回收和交换,比如内存回收机制、oom、swap等-页缓存PageCache管理,利用合并IO

2、以减少IO操作,也包含写脏页机制。PG的double buffer第二层就是这个,所以pg是依赖VM的pagecache管理的VM-内存压缩5内存压缩(Compaction)是Linux内核用于解决内存碎片化问题的机制,通过合并空闲物理页,提升大块内存页的分配。参数名功能定位默认值/范围compact_memory手动触发全局内存压缩操作写入1触发compaction_proactiveness控制主动压缩的触发频率4.x才有的参数。0-100(默认20)compact_unevictable_allowed是否允许压缩不可回收页(如mlock锁定的内存)4.x才有的参数。0(禁止)或1(允许

3、)defrag_mode控制内存碎片整理的触发策略4.x才有的参数。0-3,0表示关闭自动compaction特性,只能手动压缩;1表示defer开启被动压缩。3.10默认1extfrag_threshold大块内存不足时,触发压缩的阈值0-1000(默认500)VM-内存压缩6压缩有3种模式(跟内核版本是否支持相关):被动压缩:extfrag_threshold是进程申请大块内存发现已经不足是否压缩,解决“已发生”的碎片问题。主动压缩:compaction_proactiveness是主动控制压缩的积极性,优化“未发生”但可能出现的碎片风险。手动压缩:compact_memory。VM-内存

4、压缩7extfrag_threshold是Linux内核中控制被动压缩的参数。当内核尝试分配高阶连续物理内存(如大页)失败时,会通过碎片化指数判断失败原因:-1:分配成功(满足水位线)0:因内存不足失败0-1:因碎片化失败cat/sys/kernel/debug/extfrag/extfrag_index|grep NormalNode 0,zone Normal-1.000-1.000-1.000-1.000-1.000-1.000-1.000-1.000-1.000 0.995 0.998 比如extfrag_threshold=600,则当碎片化指数600时触发压缩。extfrag_in

5、dex还是挺有用的,可以协助buddy观察碎片问题。VM-刷脏8刷脏跟内存回收有点类似,也分异步和同步:异步刷脏:由pdflush/flush/kdmflush等后台线程执行,应用写入不受影响同步刷脏:直接阻塞应用进程,由发起写操作的进程自己刷脏参数名称作用描述默认值dirty_background_bytes后台异步刷脏阈值,字节0(未启用)dirty_background_ratio后台异步刷脏阈值,百分比10%dirty_bytes同步刷脏阈值,字节0(未启用)dirty_ratio同步刷脏阈值,百分比20-40%dirty_expire_centisecs脏页在内存中的最长存活时间30

6、00(30秒)dirty_writeback_centisecs内核周期性检查脏页状态的频率500(5秒)xxx_bytes和xxx_ratio参数互斥。VM-刷脏9dirty_background_bytes 0dirty_background_ratio 10dirty_bytes 0dirty_ratio 40dirty_expire_centisecs 3000dirty_writeback_centisecs 500应用程序写入生成脏页周期检查dirty_writeback_centisec 每5秒阈值检查超时脏页dirty_expire_centisecs3秒dirty_backg

友情提示

1、下载报告失败解决办法
2、PDF文件下载后,可能会被浏览器默认打开,此种情况可以点击浏览器菜单,保存网页到桌面,就可以正常下载了。
3、本站不支持迅雷下载,请使用电脑自带的IE浏览器,或者360浏览器、谷歌浏览器下载即可。
4、本站报告下载后的文档和图纸-无水印,预览文档经过压缩,下载后原文更清晰。

本文(5-刘智龙-PostgreSQL与Linux内存管理.pdf)为本站 (科技新城) 主动上传,三个皮匠报告文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知三个皮匠报告文库(点击联系客服),我们立即给予删除!

温馨提示:如果因为网速或其他原因下载失败请重新下载,重复下载不扣分。
客服
商务合作
小程序
服务号
折叠