我打算使用php5-apcu ubuntu包.
流程之间是否共享数据?换句话说,如果我在一个网站加载中设置一个缓存条目,那么另一个网站加载是否可以使用缓存条目,即使它是与另一个进程一起提供的?
这是如何工作的:
apache2 php prefork模块
php5 fpm与多个工人
PHP-CLI
ceejayoz.. 7
https://github.com/krakjoe/apcu/issues/121
规则是只有子进程可以访问其父进程创建的内容; 在FCGI中,衍生的进程不一定是其父进程的子进程,它们可能不是实际的分支.如果您的流程管理器像传统的FCGI/CGI一样工作,那么您将无法共享,如果它像FPM一样工作,并在父级和分叉子解释器中初始化PHP,那么您将没有问题.
Apache的prefork和PHP的FPM将在工作进程之间共享(通过父进程的内存空间).
CLI不会,因为每个CLI调用都是一个单独的进程.
您可以考虑使用memcached或redis作为替代方案.
https://github.com/krakjoe/apcu/issues/121
规则是只有子进程可以访问其父进程创建的内容; 在FCGI中,衍生的进程不一定是其父进程的子进程,它们可能不是实际的分支.如果您的流程管理器像传统的FCGI/CGI一样工作,那么您将无法共享,如果它像FPM一样工作,并在父级和分叉子解释器中初始化PHP,那么您将没有问题.
Apache的prefork和PHP的FPM将在工作进程之间共享(通过父进程的内存空间).
CLI不会,因为每个CLI调用都是一个单独的进程.
您可以考虑使用memcached或redis作为替代方案.