Opened 6 years ago

Last modified 21 months ago

#155 new defect

XCACHE在FASTCGI模式下的内存问题

Reported by: qqgod Owned by: moo
Priority: major Milestone: undecided
Component: cacher Version: 1.2.1
Keywords: Cc:
Application: PHP Version: 5.2.1-WIN32
Other Exts: SAPI: FastCGI
Probability: Blocked By:
Blocking:

Description

使用ZENDCORE的APACHE-WIN32套件 PHP 5.2.1 NTS 加挂了XCACHE 使用EXTENSION模式加载
工作正常 但是发现内存的一个问题

我的服务器内存为4G,由于服务器上有大量的PHP页面,在服务器上面我设置了OPCODE缓存大小为256M
由于是FASTCGI模式是多PHP进程处理,每个PHP.exe进程都在启动时开辟了256M的内存空间 4个进程1G的内存就没了

8个进程就是2G内存 而且这些进程之间的内存不共享,从XCACHE的管理页面就可以看出 一个页面是随机的分配到一个空闲的PHP.exe进程上去,我的index.php在PHP.exe-1上面没有 编译一次 刷新一下在php.exe-2上面没有 又编译一次 占用内存 每个页面都被缓存了N次 这样下去不是办法啊 我的服务器经常能开到7个左右的进程

因为没用过LIGHTTPD+php fcgi下的XCACHE环境 请问这个问题在LIGHTTPD下是否不会发生?改用LIGHTTPD是否能得到改善?

如果不能改善,是否XCACHE项目有短期内解决这个问题的计划?请给我个答复,如果没有我将把我的生产环境改为APACHE-SAPI模式

Change History (2)

comment:1 Changed 6 years ago by moo

XCache 之前已经列入 2.0 或者 2.1 的开发计划内, 预计需要挺长时间. 问题如你所分析. 如果知道如何在多个进程之间共享同一个内存&地址(注意是内存以及地址)的办法, 解决这个问题会更简单, 目前我只有非常麻烦 并且可能有损性能的办法.

comment:2 Changed 21 months ago by moo

  • Milestone set to undecided
Note: See TracTickets for help on using tickets.