如果有 10 个请求到达 Apache,它会逐个处理它们,那么当 R3 完成时,它就会开始运行 R4,还是它会触发 10 个进程/线程/其他内容并同时解决?
现在介绍一些背景知识:我有一个 PHP 脚本,它最多需要两分钟才能完成一些处理。我的问题是:当一个客户端等待这 2 分钟时,所有其他客户端的请求都在处理中吗?还是也在等待这个请求结束?
顺便一提,如果有同时请求,我该如何处理?比如说,对它们设置一个限制。或者对所消耗的资源设置一个限制。例如,我希望服务器将其 80% 的性能用于服务 Web 应用,而对于那些耗时较长的操作,只使用 20%,因为我并不急于结束它们。
我不知道这是否重要,但都是用 PHP 写的。
答案1
服务器同时处理请求的数量取决于您在配置文件中设置的限制。请查看以下指令:
MinSpareThreads
MaxSpareThreads
ThreadsPerChild
MaxClients
MaxRequestsPerChild