a.a 发表于 2013-12-02 22:07

php module 和php-fpm

php module 和php-fpm
最近在使用nginx +php-fpm作为网站的架构,上线之后发现php-fpm的cpu消耗比较高。很想知道php是心模块化的方式运行效率高呢,还是心php-fpm的方式效率高。有知道朋友多多指点,拜托了。

satrun7 发表于 2013-12-02 23:03

php在module与fastcgi两者运行的性能相差很少,并发量大情况下,使用fastcgi性能更优,运行时内存更少.
如果是php 5.3建议在php加入apc缓存,如果是php5.4就使用OPcache缓存,这两个缓存扩展对繁忙的系统,基本可以提高10-15%的性能.
如果这样还不能降低CPU消耗, 建议你从数据库,缓存层着手优化了。
php运行占用率高, 90%是数据读写逻辑算法不好。

a.a 发表于 2013-12-03 13:06

回复 2# satrun7


    谢谢楼主的指点,这次遇到的问题就是在大量并发的情况下发生的。nginx调用的php的方式使用的是ip:port 不是使用的socket,这两种方式对性能应该没有什么不同吧?

yakczh_cu 发表于 2013-12-03 18:59

回复 3# a.a

文件    socket比ip性能高30%  php手册中有,可以看一下

yakczh_cu 发表于 2013-12-03 19:03

module是传统的一夫一妻制,不离不奇,百头到老,fastcgi 可以包二奶,包小三,完全看兜里的钱多钱少,比较灵活,用流行的话说,就是优化资源配置

a.a 发表于 2013-12-04 14:30

本帖最后由 a.a 于 2013-12-04 14:30 编辑

回复 4# yakczh_cu


    原来是这样,明白了。
    非常感谢。看了下说明如果php和nginx是部署在同一台服务器上的话可以使用unix socket,tcp socket 有tcp的较验,所以其稳定性要好于unix socket .
    再次谢谢你,cu难得有这样的回复了。

liuxingyuyuni 发表于 2013-12-05 14:42

yakczh_cu 发表于 2013-12-03 19:03 static/image/common/back.gif
module是传统的一夫一妻制,不离不奇,百头到老,fastcgi 可以包二奶,包小三,完全看兜里的钱多钱少,比较 ...

:em02: 好形象的比喻!

holine 发表于 2014-01-02 14:55

回复 5# yakczh_cu


    这才叫深入浅出,厚积薄发,通俗易懂。

bs 发表于 2014-01-26 13:08

php-fpm 会在网络通信上多一层开销, 这块是消耗 cpu
页: [1]
查看完整版本: php module 和php-fpm