PHP Apache 增加每个客户端的最大并发连接数

标签 php apache powershell concurrency xampp

我想使用 XAMPP 同时运行数十个长时间运行的 PHP 脚本。每个脚本运行时间超过2小时,并且不使用session、cookie等。

对于我的第一次测试运行,我尝试在浏览器上打开其中 10 个脚本,但只有我打开的前 6 个脚本实际上开始执行(我知道这一点是因为在每个脚本的开头,我立即打开一个文件在那里写入状态更新——除了前 6 个脚本之外,任何脚本都不会写入任何内容。

是否有我可以在每个脚本的顶部放置的代码,或者我可以更改的一些 PHP 设置,或者我可以采用的任何其他方法,以便我可以同时运行任意数量的 PHP 脚本?


编辑以下是实现此目的的方法:

1) 从此处下载 PowerShell 2(或与您的 Windows 版本兼容的版本):http://support.microsoft.com/kb/968929

2) 安装并重新启动计算机。

3) 创建一个新文件“example.ps1”并将其保存到您选择的目录(例如 c:\examples\example.ps1)。将此代码放入该文件中:

start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\1.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\2.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\3.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\4.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\5.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\6.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\7.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\8.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\9.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\10.php}
start-job {.\c:\xampp\php\php C:\xampp\htdocs\phpfiles\11.php}

4) 单击“开始”->“运行”并输入“powershell”(不带引号)。

5) PowerShell 启动后,输入以下内容并按 Enter:

Set-ExecutionPolicy RemoteSigned

然后按“y”设置更改。

6) 现在输入(确保输入完整的文件路径):

c:\examples\example.ps1

7) 要查看您的职位,只需输入:

get-job

要停止作业,请使用以下命令:

stop-job JobName

最佳答案

浏览器将阻止同时连接。使用命令行,您也将减少超时问题。另外,输出是即时的,因此您可以随时回显。

关于PHP Apache 增加每个客户端的最大并发连接数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12198233/

相关文章:

php - Node js/Express 替代 LAMP

php - session : Fatal error: Exception thrown without a stack frame in Unknown on line 0 中的对象

php - 告诉 Apache 服务器像 PHP 一样处理 .js 和 .css 文件是否安全?

ruby-on-rails - 使用 Ruby 1.8 和 1.9 的 Phusion Passenger?

.htaccess - 如何使用 htaccess 或 httpd.conf 将所有子目录重定向到 root?

powershell - 如何在 PowerShell 中处置 System.Xml.XmlWriter

php - 取消设置 curl CURLOPT_POSTFIELDS

PHP SOAP - 摆脱 BOGUS 标签

powershell - 即使没有比赛也能获得一场比赛

powershell - 如何循环显示pscustomobject?