日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 编程语言 > php >内容正文

php

thinkphp5 异步调用方法_thinkphp5 swoole 执行异步任务

發(fā)布時(shí)間:2023/12/4 php 31 豆豆
生活随笔 收集整理的這篇文章主要介紹了 thinkphp5 异步调用方法_thinkphp5 swoole 执行异步任务 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

目錄結(jié)構(gòu):

服務(wù)器端:

/*

*author:hdj

*/

namespace app\Console;

use think\console\Command;

use think\console\Input;

use think\console\Output;

class Websocket extends Command{

protected $server;

protected function configure()

{

$this->setName('websocket:start')->setDescription('Start Web Socket Server!');

}

protected function execute(Input $input, Output $output)

{

$serv = new \swoole_server('0.0.0.0',9501);

$serv->set(array('task_worker_num' => 4));

$serv->on('connect', function ($serv, $fd){

echo $fd."客戶端已經(jīng)連接進(jìn)來了.\n";

});

$serv->on('receive', function($serv, $fd, $from_id, $data) {

$task_id = $serv->task($data);

echo "開始投遞異步任務(wù) id=$task_id\n";

});

$serv->on('task', function ($serv, $task_id, $from_id, $data) {

echo "接收異步任務(wù)[id=$task_id]".PHP_EOL;

for ($i = 0 ; $i<10000;$i++){

if($i%2==0){

echo 'send'.$i.' success'."\n";

}else{

echo 'send'.$i.' fail'."\n";

}

sleep(1);

}

$serv->finish("$data -> OK");

});

$serv->on('finish', function ($serv, $task_id, $data) {

echo "異步任務(wù)[id=$task_id]完成".PHP_EOL;

});

$serv->start();

}

}

進(jìn)入你的根目錄 執(zhí)行? php think websocket:start

客戶端:

namespace app\index\controller;

use think\Controller;

class Test extends Controller

{

public function index(){

$client = new \swoole_client(SWOOLE_SOCK_TCP, SWOOLE_SOCK_SYNC);

$ret = $client->connect("23.27.127.32", 9501);

if(empty($ret)){

echo 'error!connect to swoole_server failed';

} else {

$client->send('blue');

}

}

}

服務(wù)端顯示:

你是不是多少有了解一點(diǎn),但是你卻對(duì)這個(gè)不精啊!免費(fèi)分享tp,laravel,swoole,swoft微服務(wù)、SQL性能優(yōu)化,分布式、高并發(fā)等教程,各種大牛都是1-78年P(guān)HP開發(fā)者,每天還有11年的架構(gòu)師做課程講解,助你進(jìn)階中高級(jí)PHP程序員,增值漲薪!

總結(jié)

以上是生活随笔為你收集整理的thinkphp5 异步调用方法_thinkphp5 swoole 执行异步任务的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。