apache2 开了 phpfcgid,原来 Mysql 就是这样被挤掉的~

2015-02-13 00:26:55 +08:00
 GreenJoson


linux debian,2G内存VPS,没啥访问,但问题是mysql经常被挤爆~~

开了phpfcgid这个样,如果不开的话,默认用的是apache2,也经常如此。~~

有没有办法查到是程序哪个位置问题吗??烦恼~~


3037 次点击
所在节点    问与答
24 条回复
sumhat
2015-02-13 03:58:04 +08:00
Virtual Memory 不说明什么问题
msg7086
2015-02-13 04:33:25 +08:00
@sumhat VIRT过量会触发overcommit的OOM Killer。

---

另外……才2G内存你还用这么古老的技术真的没问题?
还有最好上个htop的tree图,看得更清楚一点。
qq286735628
2015-02-13 09:43:49 +08:00
小内存VPS上面的apache,建议用suphp模式,这样可以控制CGI的数量,防止系统kill掉mysql
GreenJoson
2015-02-13 10:15:25 +08:00
@msg7086 2g内存使用什么方法??那什么样的叫不古老的技术??有没有什么推荐的环境包~~
msg7086
2015-02-13 10:22:19 +08:00
@GreenJoson 好像比较流行的方法是nginx+php-fpm。
还有你看看,其实你用掉的已经不是2G内存,而是4G了,swap都吃满了。
pwinner
2015-02-13 10:27:28 +08:00
反正用apache就要做好爆内存的准备……
测试下来nginx明显从性能等各方面优于apache
专门开了一
pwinner
2015-02-13 10:28:10 +08:00
@pwinner 手滑发出去了……专门开了一台Linode研究hhvm,发现提升巨大……
https://geeking.moe/archives/347链接在这里
GreenJoson
2015-02-13 10:59:39 +08:00
@pwinner 你的博客?好像还不错呀~~不知道兼容性如何~~有没有安装教程~~
GreenJoson
2015-02-13 11:00:11 +08:00
@msg7086 是的~已经是跑满了4G的了~~唉。。无语的apache2~
msg7086
2015-02-13 11:07:45 +08:00
@pwinner 我现在有个BT Tracker就是跑在nginx内部,性能好得出奇,每秒几百的连接进来,CPU Load 动都不动。

@GreenJoson 小内存老老实实换nginx啦。

至于环境包,Debian系统自己的包就很好了,一键装完,稍微配置一下就能用。
juneszh
2015-02-13 11:13:33 +08:00
顺便求个 有没有像htop一样可以直观监测端口上下行流量的 像ss开了多端口多用户的情况下 看看哪个家伙流量多
GreenJoson
2015-02-13 11:21:48 +08:00
@msg7086 要知道小白的我,是不懂配置这玩意了。估计我还得google,度娘一圈回来,到头来,还得来发问~~哭死~~
msg7086
2015-02-13 11:27:32 +08:00
@juneszh 你是说 iftop ?

@GreenJoson 流量那么大的话,找个懂的人帮配置一圈也没多少钱吧。

话说你这load常年保持在10以上,没被Linode强行停机真是奇迹。
maoyipeng
2015-02-13 13:15:10 +08:00
为何不用apache+fpm
em70
2015-02-13 13:29:08 +08:00
2G内存用32位系统,别用64的,否则莫名奇妙的问题多
msg7086
2015-02-13 13:33:13 +08:00
@em70 没这种说法吧。我256M内存照样64位也没见什么问题。
倒是现在PHP对于平台会产生不同的结果,比如32位下INTMAX是32位的,大数据计算容易溢出,64位就没有问题。我现在宁愿全程64位也不愿意节约这么一小点内存了。
em70
2015-02-13 14:08:18 +08:00
@msg7086 你没问题不能说全世界都没问题,我们的经验表明确实在小内存跑64位的时候多次遇到各种莫名其妙的问题,楼主这种情况也遇到过,谁都说不清楚怎么回事,换32位linux立马解决. 不管你信不信,至少这是一个解决问题的方法,试试无妨.
msg7086
2015-02-13 14:20:53 +08:00
@em70 莫名其妙的问题是什么问题?
流量过大导致apache不停fork把内存吃满应该不算「莫名其妙的问题」吧。
而且……等等……卤煮有说过他用的是64位?
em70
2015-02-13 14:31:43 +08:00
@msg7086 他说他没什么访问量啊,根据他贴出的top截图看,出现272M,378M这样的数据,十有八九都是64位系统. 32位一般不显示单位,比如9889这样的. 我不是apache,linux的开发人员,我不了解其中的道理,只是说一些我早些年实际遇到类似问题的经验.最近几年我基本最少都8G内存+64位,就很少遇到这些问题了.
imlonghao
2015-02-13 14:33:40 +08:00
bandwagon我跑64位sorry...

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/170623

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX