我想使用XAMPP同時運行數十個長時間運行的PHP腳本。每個腳本運行時間超過2小時,並且不使用會話,cookie等。PHP Apache增加每個客戶端併發連接的最大數量
對於我的第一次測試,我嘗試在瀏覽器中打開這10個腳本,但實際上只打開了前六個執行(我知道這是因爲在每個腳本開始時,我立即打開一個文件來寫入狀態更新 - 除了前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發起,在以下並按輸入類型:
Set-ExecutionPolicy RemoteSigned
然後按下 「Y」 來設定的變化。
6)現在,在(確保在完整的文件路徑進入):
c:\examples\example.ps1
7)要查看你的工作只需鍵入:
get-job
要停止作業使用此命令:
stop-job JobName
更適合在服務器故障 – bretterer
爲什麼這必須在Apache內運行? –
@Jack,我從我的電腦(Windows XP)本地運行。除了Apache之外,還有其他方法可以運行嗎?\ n @ bretterer,謝謝,我不知道http:// serverfault。com/ – Pamela