免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 2873 | 回复: 3
打印 上一主题 下一主题

定期清理庞大的缓存,并且占用极少cpu.??? [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2004-05-28 09:38 |只看该作者 |倒序浏览
现我遇到了一个问题,因为对shell编程不熟悉,

   我们的Web服务器建有缓存,需要定期清理,但是由于缓存过于庞大(缓存目录下有大量子目录,子目录下有大量(万级或十万级)文件),删除缓存时会占用大量CPU,严重影响我们的Web服务。
  我想做一个shell脚本,定期清理缓存,并且占用极少的cpu,我并不需要很快的清理,就算运行一整天也无所谓,只需要占用极少的cpu,最好可以通过时间判断清除老的缓存,在后台运行,慢慢的清除掉一天前或两天前的缓存,占用极少的cpu。
能给一些指导吗?我对shell不熟悉,请解释的详细一些。

论坛徽章:
0
2 [报告]
发表于 2004-05-28 10:03 |只看该作者

定期清理庞大的缓存,并且占用极少cpu.???

你说的有一万甚至十万文件是在一个目录里,还是多个目录里加起来的。如果都在一个目录里可能会影响访问效率,最好能改进一下。

你说慢,影响web服务,你首先得找到是那个步骤造成了这种影响──通过自己的试验。我想要考虑的可能有两个:检索过期文件时,或者删除文件时。找到最影响系统运行的因素,就可以对症下药:
检索文件方面,除了靠减少一个目录下文件的数量(最好控制在1000以内)来改进访问目录的速度,还可以分次检索,一次只检索一个子目录,这样把每次检索的范围缩小也可能缓解对cpu和hard disk的冲击;删除文件也是类似的思想,比如把原来在一次里删除的十万个文件分成一千组,每隔五秒删一组(也就是一百来个),这样把系统负担均匀分摊到一个比较长的时间段也会缓解系统压力。

论坛徽章:
0
3 [报告]
发表于 2004-05-28 10:24 |只看该作者

定期清理庞大的缓存,并且占用极少cpu.???

分组的想法很好,不好意思,我对shell不熟悉,连用具体什么命令都不知道。

论坛徽章:
0
4 [报告]
发表于 2004-05-28 11:08 |只看该作者

定期清理庞大的缓存,并且占用极少cpu.???

[quote]原帖由 "chinajordan"]分组的想法很好,不好意思,我对shell不熟悉,连用具体什么命令都不知道。[/quote 发表:
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP