并发的HTTP请求,apache是如何响应的,以及如何调用php文件的?
2014-05-16 来自:宸寞 1 人回应

LAMP平台,apache应该是使用prefork模式,我想问一下,prefork创建的众多进程是单独监听请求,还是说监听请求,然后再对请求处理,然后再返回用户?
如果有100个用户同时请求index.php文件,是怎么样进行执行的?这100个用户是需要排队请求一个文件呢?还是对该文件创建若个副本?
如果是100个用户排队请求一个文件的话,那和1个用户同时访问100次是一样的了吧?
另外,如何测试一个网站能同时承载的最大用户数呢?
谢谢诸位

2014-05-22 来自:乐俊
  1. Apache 上运行 PHP 有多种方式,常见的如 FastCGI 和 PHP Module,他们的工作模式不同。如果是使用 PHP Module 的话,是在 Apache 的进程中执行 PHP 脚本的,监听进程会把请求分派给工作进程来处理。
  2. 100个用户同时请求 index.php 通常不会排队的,因为 Apache 可以有多个进程处理请求,同时每个进程又可以有很多线程,所以如果你的机器够强悍的话,可以理解为并发处理。
  3. 测试应用性能和容量的问题可以借助一些压力测试工具,付费的,也是最好的,就是 HP LoadRunner,借助这个工具可以在少量的电脑上模拟大量的用户,然后再看应用的表现。它会自动收集例如每秒请求数、每秒事物数、响应时间等数据,并且以图表方式给你展示出来。

您的回应

你还未登陆,不能回应!登陆