估算Apache所需要的内存
浏览:2965次 出处信息
精确的计算所需要的内存是很困难的,为了尽可能的精确,需要观察类似线上环境下观察服务器的负载和进程。毕竟如果不同的服务器配置和装的模块是有差异的,只有查看自己才可靠,所谓核心的东西要掌握在自己手里大概如此。。。。
一个简单可靠的法子是,在压力测试时,找到httpd进程,查看一个进程使用了多少的内存,然后看看总的进程,即可估算一下。
比如:
ps aux | grep httpd
查看每个httpd进程使用了多少内存,数字在第四列,格式为百分之几。
ps aux | grep httpd | wc -l
得到一共有多少进程,记得结果要减1,因为grep httpd也在结果中。
free
查看服务器内存总量,单位为K
然后就可以估算了。比如一个进程占2%的内存,有27个httpd,总内存为4148424。那就是:
php -r "echo 0.002*4148424*26/1024;"
结果为210.66215625M内存,这个只仅仅是为apache分配的。还得给其它服务留出足够空余的内存。而且考虑高峰期可能会比平时大12倍,这个时候仅仅考虑Apache就够了,嘿嘿。曾经出现过因磁盘IO过高导致服务器崩溃的场景。
如果怎么算都不能让服务器有空余的内存,就得考虑限制最大进程数了。使用MaxClient指令可以用来限制。
以上说得有误之处,还请各位指点!
建议继续学习:
- Linux内存点滴 用户进程内存空间 (阅读:11050)
- ps - 按进程消耗内存多少排序 (阅读:11007)
- Linux Used内存到底哪里去了? (阅读:9745)
- Linux操作系统的内存使用方法详细解析 (阅读:8716)
- linux内核研究笔记(一)内存管理 – page介绍 (阅读:8027)
- 几个内存相关面试题(c/c++) (阅读:7824)
- 内存越界的概念和调试方法 (阅读:6142)
- 必看!linux系统如何查看内存使用情况 (阅读:6020)
- Innodb分表太多或者表分区太多,会导致内存耗尽而宕机 (阅读:6008)
- 如何查看Linux 硬件配置信息 (阅读:5712)
QQ技术交流群:445447336,欢迎加入!
扫一扫订阅我的微信号:IT技术博客大学习
扫一扫订阅我的微信号:IT技术博客大学习
后一篇:Apache配置文件学习(一) >>
文章信息
- 作者:yayu 来源: 芽雨快跑
- 标签: 内存
- 发布时间:2009-10-10 13:20:11
建议继续学习
近3天十大热文
- [16] 浏览器的工作原理:新式网络浏览器幕后揭秘
- [14] Go Reflect 性能
- [14] 界面设计速成
- [13] Spark性能优化——和shuffle搏斗
- [13] iOS可视化编程 Tips 之“无需代码设置
- [13] iOS下自己动手造无限循环图片轮播
- [12] 最萌域名.cat背后的故事:加泰与西班牙政府
- [12] iOS并发编程(Concurrency Pr
- [12] Android设计中的.9.png
- [11] iOS 开发 UI 搭建心得(二)—— 善用