multithreading - Apache不是多线程的吗?

标签 multithreading apache

我在 localhost 上使用 Apache 休息室超过 3 个月。
今天我发现我的 Apache/PHP 安装不是多线程的,通过运行一个使用 sleep(10) 的脚本并同时打开 2 个浏览器选项卡。 (第二个选项卡在第一个选项卡完成后 10 秒加载)。

我已经安装了 Apache(apache.org 版本)并且没有任何改变。
我正在使用 PHP 5.3.6 VC9 线程安全。

问题是什么?

最佳答案

您必须确保您使用的是 Apache 的 worker MPM,而不是 prefork 的。根据您的安装,您可以简单地将/usr/sbin/httpd2 符号链接(symbolic link)到/usr/sbin/httpd2-worker(或安装它的任何位置)。

当然,在您的情况下,您也可以只增加配置中的最大进程数,这应该使您能够打开多个选项卡并让它们同时运行。

像这样的东西:

StartServers       2
MinSpareServers    2
MaxSpareServers    8
ServerLimit        8
MaxClients         8
KeepAlive off

关于multithreading - Apache不是多线程的吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7116144/

相关文章:

从 MySQL 数据库引入之前的 PHP preg_replace 字段

python - 使用 pool.map 进行多处理时无法 pickle 本地对象

apache - 在 Apache 上设置虚拟主机(XAMPP、Windows 10)

multithreading - PowerShell中是否有lock语句

c++ - C++ 中的多线程抛出线程构造函数失败 : Resource temporarily unavailable

php - .htaccess 重写通过所有查询字符串

php - 启用文件夹权限以允许文件上传。

java - 如何将图像上传到tomcat或glassfish中的网络资源文件夹

multithreading - 如何将 traceId 从 gRPC 的上下文传递到另一个线程/线程池?

c# - 访问Collection时出现A​​rgumentOutOfRangeException,即使索引未超出范围?