V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
GreenJoson
V2EX  ›  Apache

linux debian 装的 Vestacp 面板, apache2 好占内存~~求高手优化?

  •  
  •   GreenJoson · 2015-02-02 22:37:41 +08:00 · 4213 次点击
    这是一个创建于 3614 天前的主题,其中的信息可能已经有所发展或是发生改变。

    以下是top 出来的情况~~

    3875 mysql 20 0 846m 116m 10m S 61.9 5.9 112:09.24 mysqld
    32335 www-data 20 0 281m 30m 12m S 2.0 1.5 0:03.57 apache2
    30813 www-data 20 0 280m 29m 12m S 5.7 1.5 0:16.30 apache2
    30814 admin 20 0 279m 28m 12m R 3.7 1.4 0:16.19 apache2
    30812 www-data 20 0 278m 27m 12m S 0.7 1.4 0:12.92 apache2
    30811 www-data 20 0 277m 26m 12m S 0.3 1.3 0:12.31 apache2
    30810 www-data 20 0 277m 26m 12m S 0.3 1.3 0:16.30 apache2
    30817 www-data 20 0 277m 26m 12m S 3.7 1.3 0:11.75 apache2
    31013 www-data 20 0 277m 26m 12m S 0.0 1.3 0:10.66 apache2
    30815 www-data 20 0 277m 26m 12m S 4.7 1.3 0:13.26 apache2
    30816 admin 20 0 276m 25m 12m S 0.3 1.3 0:15.71 apache2
    31144 www-data 20 0 275m 24m 12m S 0.0 1.3 0:10.75 apache2
    30789 root 20 0 268m 24m 16m S 0.0 1.2 0:00.10 apache2
    3420 bind 20 0 177m 23m 5360 S 0.0 1.2 0:00.13 named
    32595 www-data 20 0 274m 22m 12m S 0.0 1.1 0:00.81 apache2
    3570 admin 20 0 46848 9152 6164 S 0.0 0.4 0:00.13 vesta-php
    3571 admin 20 0 46596 9052 6204 S 0.0 0.4 0:00.17 vesta-php
    30797 www-data 20 0 148m 6152 2076 S 0.0 0.3 0:00.02 apache2
    473 www-data 20 0 53208 6020 3760 S 0.0 0.3 0:35.29 nginx
    475 www-data 20 0 53076 5972 3720 S 0.3 0.3 0:42.98 nginx
    14599 root 20 0 71308 5348 4568 S 0.0 0.3 0:00.04 sshd
    11841 root 20 0 71456 5308 4492 S 0.0 0.3 0:00.38 sshd
    3412 admin 20 0 41716 4996 3912 S 0.0 0.2 0:00.19 vesta-nginx
    32401 root 20 0 51292 4916 4300 S 0.0 0.2 0:00.00 sshd
    3566 root 20 0 44444 4812 2768 S 0.0 0.2 0:00.98 vesta-php
    11865 root 20 0 20432 4572 3060 S 0.0 0.2 0:00.08 bash
    661 dovenull 20 0 24008 4452 3852 S 0.0 0.2 0:00.00 pop3-login
    4208 ntp 20 0 39084 4388 3776 S 0.0 0.2 0:01.94 ntpd
    4606 Debian-e 20 0 97168 4080 2940 S 0.0 0.2 0:00.01 exim4
    4338 root 20 0 22896 3524 2064 S 0.0 0.2 0:00.44 config
    476 www-data 20 0 52452 3376 2032 S 0.0 0.2 0:01.21 nginx
    32403 sshd 20 0 51292 3036 2404 S 0.0 0.1 0:00.00 sshd
    3436 root 20 0 49948 2788 2640 S 0.0 0.1 0:01.16 sshd
    30835 root 20 0 23340 2636 2216 R 0.3 0.1 0:00.66 top
    470 root 20 0 52448 2572 1440 S 0.0 0.1 0:00.00 nginx
    3242 root 20 0 119m 2532 2344 S 0.0 0.1 0:02.08 rsyslogd
    16049 dovecot 20 0 17684 2368 2048 S 0.0 0.1 0:00.77 auth

    apache2 配置文件,求帮忙优化~~

    LockFile ${APACHE_LOCK_DIR}/accept.lock
    PidFile ${APACHE_PID_FILE}
    Timeout 30
    KeepAlive Off
    MaxKeepAliveRequests 100
    KeepAliveTimeout 10

    <IfModule mpm_prefork_module>
    StartServers 8
    MinSpareServers 5
    MaxSpareServers 20
    ServerLimit 256
    MaxClients 200
    MaxRequestsPerChild 1000
    </IfModule>

    <IfModule mpm_worker_module>
    StartServers 2
    MinSpareThreads 25
    MaxSpareThreads 75
    ThreadLimit 64
    ThreadsPerChild 25
    MaxClients 200
    MaxRequestsPerChild 1000
    </IfModule>

    <IfModule mpm_event_module>
    StartServers 2
    MinSpareThreads 25
    MaxSpareThreads 75
    ThreadLimit 64
    ThreadsPerChild 25
    MaxClients 200
    MaxRequestsPerChild 1000
    </IfModule>

    硬盘使用状况 总空间 46.692 G, 已用 26.579 G, 空闲 20.113 G, 使用率 56.92%

    内存使用状况 物理内存:共 1.948 G , 已用 1.79 G , 空闲 0.158 G , 使用率 91.89%

    Cache化内存为 0.83 G , 使用率 42.6 % | Buffers缓冲为 0.343 G

    真实内存使用 0.617 G , 真实内存空闲 1.331 G , 使用率 31.67 %

    SWAP区:共 2.48 G , 已使用 0.006 G , 空闲 2.474 G , 使用率 0.25 %

    系统平均负载:0.73 0.88 0.86 1/134

    V2ex 好像不能上传图片???

    11 条回复    2015-02-03 13:42:41 +08:00
    lightryanking
        1
    lightryanking  
       2015-02-02 23:00:03 +08:00
    apache本来就占内存。。。nginx版的vestacp跳票了大半年了,建议你放弃吧
    GreenJoson
        2
    GreenJoson  
    OP
       2015-02-02 23:24:41 +08:00
    @lightryanking 那。。。我岂不是又得重装了。。。。。好坑~~
    extreme
        3
    extreme  
       2015-02-02 23:25:08 +08:00
    都说Apache占内存……
    事实上我强烈反对这个结论!!!
    我可以肯定您贴上来的Apache的进程是Apache以mod_php模式运行时为处理PHP而FORK的进程。
    你们用Nginx,不见Nginx那么多进程,是因为Nginx以线程模式运行,事实上FastCGI Server还是会fork一堆PHP进程。

    不同方式运行PHP,资源占用也是不同的,其中mod_php模式最占资源(我猜一个进程不仅要给Apache自身占用一些资源,还要给Apache处理PHP占用一些资源),其触发的OOM可以让你系统Down掉。

    你可以让Apache以线程模式运行(没记错的话应该是work模式),以CGI模式处理PHP。这样就仅需Fork PHP的进程,但多起来一样死,只是没mod_php那么惨烈。

    PHP的进程模式注定配置不好的服务器大访问量要死。既然如此,那我们就不要让他Fork进程,从PHP自身动手,对于我来说是不可能事件,因此仅能从外部,缓存乃最佳选择。

    选择1. Varnish
    说说我的体验,我的WordPress,使用17CE进行GET测试,mod_php模式下,内存可瞬间被多占用1-2 Gbytes,可看见Fork了一大堆进程,在启用Varnish后,同样方式测试仅有数十Mbytes的内存占用变化。

    选择2. FastCGI Cache
    这个效果也是挺明显的,但我未进行具体测试,目前使用中。

    选择3. Nginx Proxy Cache
    这个效果比较差,17CE测试,内存占用变化还是较明显。

    选择4. 各种PHP缓存
    例如WordPress的WP Super Cache,效果挺好,不过效率没HTTP Server高。
    GreenJoson
        4
    GreenJoson  
    OP
       2015-02-02 23:26:08 +08:00
    debian 上的 apache 怎么 将prefork模式切换为worker模式

    听说worker模式会好点~??~
    GreenJoson
        5
    GreenJoson  
    OP
       2015-02-02 23:32:51 +08:00
    @extreme vestacp nginx模式有个caching模式,但感觉差不多了~~
    我现在想切换为worker模式 ,估计会好点~~我试过装memcache,php memcache ,但感觉没啥用处~~
    extreme
        6
    extreme  
       2015-02-02 23:39:17 +08:00
    @GreenJoson 使用前你应该了解那是缓存什么,如果根本不是缓存你想要缓存的东西,那肯定不会达到你预期的效果。
    extreme
        7
    extreme  
       2015-02-02 23:49:38 +08:00
    @GreenJoson 如果你从更新源安装的,卸载apache2-mpm-prefork,安装apache2-mpm-worke。
    如果自己编译的,是编译为多种运行模式,那就改配置文件,改模块,否则,那就重新configure再编译。
    GreenJoson
        8
    GreenJoson  
    OP
       2015-02-03 00:17:40 +08:00
    @extreme 装的就是vestacp ,自带的apache 模式是prefork,但是配置文件又有worke的模式配置。就不知道怎么切换了~~唉~~
    Eleutherios
        9
    Eleutherios  
       2015-02-03 09:35:37 +08:00 via iPhone
    试试HHVM?
    ryd994
        10
    ryd994  
       2015-02-03 10:18:51 +08:00
    @extreme nonono,nginx不是靠线程,而是靠事件,靠线程是不能搞定c10k的
    CGI跑php也是要死人的。fcgi才对
    nginx反代作缓存这个配置其实还是要点麻烦的,对动态内容基本没效果。不过可以把静态内容抢下来,这个效果还是很好的。
    GreenJoson
        11
    GreenJoson  
    OP
       2015-02-03 13:42:41 +08:00
    @Eleutherios 这玩意,估计折腾不起来。反倒把自己搞死。。还是算了~~~
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   6009 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 02:10 · PVG 10:10 · LAX 18:10 · JFK 21:10
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.