dockerbuffcache占用过高 linux buffer cache 过高
淘宝搜:【天降红包222】领超级红包,京东搜:【天降红包222】
淘宝互助,淘宝双11微信互助群关注公众号 【淘姐妹】
近期一台服务器运行中查看内存容量时发现buff/cache占用过高,几乎占用百分之70
什么是buffer/cache?
buffer和cache是两个在计算机技术中被用滥的名词,放在不通语境下会有不同的意义。在Linux的内存管理中,这里的buffer指Linux内存的:Buffer cache。这里的cache指Linux内存中的:Page cache。翻译成中文可以叫做缓冲区缓存和页面缓存。在历史上,它们一个(buffer)被用来当成对io设备写的缓存,而另一个(cache)被用来当作对io设备的读缓存,这里的io设备,主要指的是块设备文件和文件系统上的普通文件。但是现在,它们的意义已经不一样了。在当前的内核中,page cache顾名思义就是针对内存页的缓存,说白了就是,如果有内存是以page进行分配管理的,都可以使用page cache作为其缓存来管理使用。当然,不是所有的内存都是以页(page)进行管理的,也有很多是针对块(block)进行管理的,这部分内存使用如果要用到cache功能,则都集中到buffer cache中来使用。(从这个角度出发,是不是buffer cache改名叫做block cache更好?)然而,也不是所有块(block)都有固定长度,系统上块的长度主要是根据所使用的块设备决定的,而页长度在X86上无论是32位还是64位都是4k。
什么是page cache?
Page cache主要用来作为文件系统上的文件数据的缓存来用,尤其是针对当进程对文件有read/write操作的时候。如果你仔细想想的话,作为可以映射文件到内存的系统调用:mmap是不是很自然的也应该用到page cache?在当前的系统实现里,page cache也被作为其它文件类型的缓存设备来用,所以事实上page cache也负责了大部分的块设备文件的缓存工作。
什么是buffer cache
Buffer cache则主要是设计用来在系统对块设备进行读写的时候,对块进行数据缓存的系统来使用。这意味着某些对块的操作会使用buffer cache进行缓存,比如我们在格式化文件系统的时候。一般情况下两个缓存系统是一起配合使用的,比如当我们对一个文件进行写操作的时候,page cache的内容会被改变,而buffer cache则可以用来将page标记为不同的缓冲区,并记录是哪一个缓冲区被修改了。这样,内核在后续执行脏数据的回写(writeback)时,就不用将整个page写回,而只需要写回修改的部分即可。
如何回收cache?
Linux内核会在内存将要耗尽的时候,触发内存回收的工作,以便释放出内存给急需内存的进程使用。一般情况下,这个操作中主要的内存释放都来自于对buffer/cache的释放。尤其是被使用更多的cache空间。既然它主要用来做缓存,只是在内存够用的时候加快进程对文件的读写速度,那么在内存压力较大的情况下,当然有必要清空释放cache,作为free空间分给相关进程使用。所以一般情况下,我们认为buffer/cache空间可以被释放,这个理解是正确的。
但是这种清缓存的工作也并不是没有成本。理解cache是干什么的就可以明白清缓存必须保证cache中的数据跟对应文件中的数据一致,才能对cache进行释放。所以伴随着cache清除的行为的,一般都是系统IO飙高。因为内核要对比cache中的数据和对应硬盘文件上的数据是否一致,如果不一致需要写回,之后才能回收。
在系统中除了内存将被耗尽的时候可以清缓存以外,我们还可以使用下面这个文件来人工触发缓存清除的操作:
[root@tencent64?~]#?cat?/proc/sys/vm/drop_caches?
1
方法是:
echo?1?>?/proc/sys/vm/drop_caches
当然,这个文件可以设置的值分别为1、2、3。它们所表示的含义为:
echo?1?>?/proc/sys/vm/drop_caches:表示清除pagecache。
echo?2?>?/proc/sys/vm/drop_caches:表示清除回收slab分配器中的对象(包括目录项缓存和inode缓存)。slab分配器是内核中管理内存的一种机制,其中很多缓存数据实现都是用的pagecache。
echo?3?>?/proc/sys/vm/drop_caches:表示清除pagecache和slab分配器中的缓存对象。
由于linux系统会尽量多地使用物理内存进行数据的缓存以提高IO吞吐率,具体体现在 buff/cache 会有较高的占用率。这种现象一般出现在高IO吞吐需求业务的机器上,如数据库。这是一种正常现象。
更多相关信息,您可以参考下面KB:
What is cache in "free -m" output and why is memory utilization high for cache?
个人怎样用dhl寄国际快递 DHL国际快递如何寄件
如何用dhl寄国际快递,如何使用dhl寄国际快递,怎么用dhl寄快递去国外,dhl国际快递个人怎么寄外贸、跨境电商发展很快,DHL快递也国内跨境电商卖家以及外贸企业的主要物流方式之一,对于刚入行的小白来着还是会比较迷茫,因为跟国内快递还是有一定的区别,因为涉及一些海关关税以及地址区别运费问题,下面百运网就为大家介绍如何寄DHL快递↓
DHL国际快递邮寄流程:
1.DHL运单填写指引:
①寄件人资料填写
- 寄件人姓名
- 寄件人地址或公司名
- 寄件人邮编
- 寄件人联系方式
②收件人资料填下,与寄件差不多流程
- 收件人账号
- 收件人地址或公司名
- 收件人邮编
- 收件人的联系方式
③交运快件资料:
- 总件数
- 总重量
- 材积尺寸
④货物发票填写小tips:
发票需填中、英文品名,单件数量、总数,单价、总价,中英文互译这个看似小事,其实真的可以避免一些物品品名不清而被扣下!
⑤收件地关税/税金支付方式:
关税一块都是根据海关规定,货物都是以货值分为4类:
A类:没有商业价值的文件资料
B类:价值在500元人民币下的货物
C类:5000元以下的货物
D类:超过人民币5000元的货物
其中:B类以及C类一般都需要提供【正本发票】,D类的就要增加装箱单等文件来支撑一般贸易货物形式的清关;个别国家及特殊产品有特殊需求另外提供。
⑥运费支付方式:预付、到付
1)预付:运费由寄件人支付。
2)到付:运费由收件人或第三方帐号支付。
⑦重量以及尺寸:
1)计费重量以毛重和体积重量相比,取二者中较大者。体积重量的是用长X宽X高/5000得出。
2)大部分国家无重量限制,一般单件重量不超过100KG,长*宽*高《=2.9米,如超过2.9米,需预订航仓安排。
上面都过了一遍理论知识,相信对于寄国际快递已有大概的认识,下面大家来实操一遍~一键就发DHL国际快递↓
1.点击头条小程序查询DHL费用,免费查价比价↓
1)在线查价比价,选择合适渠道
1.清晰明了价格、时效等信息即可下单寄出!与寄国内快递同样简单!货代有量大优势,更可以享受比DHL官网低至2折的价格!
2.货代上门提货
在线下单后,百运网上门揽件,也可通过国内快递把货物发到泰百运网仓库。
3.成功发出
百运网在运转中心进行邮件分拣,交DHL转运中心即可,等待对方收件!
DHL国际快递是四大国际快递之一,在国际物流中有着举足轻重的地位,相信是做国际物流、外贸人以及留学海归人士都很熟悉,无论是进出或出口,DHL快递都像国内快递一样的快速选择,大家有需要可以对比价格,选择自己所需。↓
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至【【邮箱】】 举报,一经查实,本站将立刻删除。如若转载,请注明出处:【【网址】】/227675.html
..淘宝qq群里做活动的是什么东西,淘宝qq群里做活动的是什么东西,618淘宝互助微信群怎么进入,什么是拼多多助力群?拼多多500人助力微信群二维码如何获取? 这个2023年 618天猫狂欢盛典互点群是什么意思啊里有很多热心的人,分享玩法经验。加入我们,一起完成任务。