swoft php 协程 性能优化

https://dy.163.com/article/E14KTSAC0511HSJK.html 原文章地址,传送门
因为看到韩天峰大佬的这个,协程那简直不要太酸爽。所以我也尝试一下。
服务器环境lnmp+swoole linux(centos7.4),(nginx1.14),(php7.2)
框架选用swoft2.0.9 这就走起来。
|
1
2
3
4
5
6
7
8
9
10
11
|
use Swoft\Task\Task;/** * 测试协程任务*/ public function RedisGoodsList( $page, $brand_id, $tags ){ $res = Task::co('GoodsTask', 'TestCoTask', [1,2,3], 3, []); return $res; } |
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
|
<?php declare(strict_types=1);/** * This file is part of Swoft. * * @link https://swoft.org * @document https://swoft.org/docs * @contact group@swoft.org * @license https://github.com/swoft-cloud/swoft/blob/master/LICENSE */namespace App\Task\Task;use Swoft\Task\Annotation\Mapping\Task;use Swoft\Task\Annotation\Mapping\TaskMapping;use Swoft\Db\DB;use Swoft\Db\Eloquent\Model;/** * Class GoodsTask * * @since 2.0 * * @Task(name="GoodsTask") */class GoodsTask{ /** * @TaskMapping(name="TestCoTask") * 批量收藏商品进入购物车 */ public function TestCoTask( $a, $b, $c) { return $a.$b.$c; }} |

调用协程任务成功。谈不上效果。

我们看到task底层中,

都是封装好了的。试管调用就行了。

浙公网安备 33010602011771号