关于php程序并发的问题
程序员文章站
2024-04-03 23:32:22
...
比如有两个用户 A用户和B用户 A先访问a.php B再访问a.php,两者访问间隔时间很短很短
那么此时是不是用户B处于等待状态,等用户A执行完a.php的程序再轮到自己呢??还是?
对多用户同时访问同一页面的并发不是很了解~~
那么此时是不是用户B处于等待状态,等用户A执行完a.php的程序再轮到自己呢??还是?
对多用户同时访问同一页面的并发不是很了解~~
回复讨论(解决方案)
如果你使用的是apache服务器,可以查看pache如何解析php。
php有并发进程数最大限,无用手写的。
解释apache的prefork 方式
apache会启动StartServers(httpd.conf中配置)个进程 每个进程负责一个用户的访问,直到MaxClients到达之前不会出现用户排序情况,到达MaxClients后出现排队
下面是prefork的一种大体示意 真实情况较这复杂 还设计php的apache直接的SAPI 等等
apache或其他服务器都是多线程的,可以并发处理用户请求,没有超过最大限制前不需要排队。
上一篇: 利用Smarty实现文本隔行变色