swoole多程序實現demo

2021-10-23 10:23:04 字數 632 閱讀 9975

php大任務劃分成多個小任務【體驗多程序的美,提高5倍效能】

將迴圈執行的任務,劃分為多個程序執行,提高工作效率

假設我們現在有乙個通過curl抓取網頁內容的需求,需要抓取10個網頁,url位址通過陣列讀取,每個curl耗時2s。如果我們通過for迴圈來抓取這10個網頁,需要耗時20s,使用多程序我們可以將任務劃分成5份,分別由5個程序執行,每個程序抓取2個url,併發執行,共耗時4s,效率提高5倍。

<?php

$url_arr = array();

for ($i=0;$i<10;$i++)

echo "start:".date("y-m-d h:i:s").php_eol;

$workers = array();

for ($i=0;$i<5;$i++)

// 主程序資料結果

foreach ($workers as $process)

echo "end:".date("y-m-d h:i:s").php_eol;

function getcontents(swoole_process $worker)

// 假設爬取,定時2s

function execcurl($url)

Swoole多程序的實現

使用swoole多程序上傳檔案到網宿伺服器 created by phpstorm.user leeo date 2016 9 29 time 15 26 引入檔案上傳類include once filehandleclass.php obj fetch new filehandleclass wo...

swoole多程序任務

swoole發展很快版本迭代也很快,是彌補了php的缺點,提公升了php的效能,唯一的不足就是文件太差了點,很多想入門的人在官方文件並不能夠順利的進行學習。我也是開始研究swoole的一些知識,下面是總結的swoole多程序的一些知識點。swoole多程序例子1 單程序傳送10封郵件 start t...

多程序程式設計demo

在伺服器資源豐富的情況下,可以啟用多程序加速大規模資料的處理過程。本節以demo展示,輸入1000個數組成的列表,以列表的形式對應輸出其平方結果。定義基礎func功能函式 輸入乙個數,輸出其平方結果。開啟10個程序,每個程序執行一遍func函式。設定1000次迴圈,每次迴圈呼叫乙個程序,執行一步fu...