首页
下载
文档
社区
视频
捐赠
源代码
赞助商
AOT 编译器
AI 助理
商业产品
PHP AOT 原生编译器
Swoole-Compiler 代码加密器
CRMEB 新零售社交电商系统
登录
注册
全部
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
发表新帖
DTLS服务压测是时候报错:PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11]
### 问题描述 DTLS服务压测是时候报错:PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] ### Swoole版本,PHP版本,以及操作系统版本信息 PHP:7.3.16 Swoole: 4.5.0RC1 ### 相关代码 #### 客户端压测命令 ``` php sync.php -c 200 -n 10000 -s 127.0.0.1 -f dtls2 ``` #### 客户端函数dtls2 ``` //参考udp2 function dtls2(Swoole_Benchmark $bc) { static $fp; $start = microtime(true); if (empty($fp)) { $u = parse_url($bc->server_url); $fp = new Swoole\Client(SWOOLE_SOCK_UDP | SWOOLE_SSL); $fp->connect('127.0.0.1', 9595, 0.5, 0); $end = microtime(true); $conn_use = $end - $start; $bc->max_conn_time = $conn_use; $start = $end; } /*--------写入Sokcet-------*/ $fp->send("hello"); $end = microtime(true); $write_use = $end - $start; if ($write_use > $bc->max_write_time) { $bc->max_write_time = $write_use; } $start = $end; /*--------读取Sokcet-------*/ $ret = $fp->recv(); if (empty($ret)) { return false; } $end = microtime(true); $read_use = $end - $start; if ($read_use > $bc->max_read_time) { $bc->max_read_time = $read_use; } return true; } ``` #### 客户端报错 ``` PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] in /var/www/html/dnsapi/sync.php on line 286 PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] in /var/www/html/dnsapi/sync.php on line 286 ``` #### 服务端报错 ``` [2020-05-21 15:04:42 *6220.2] WARNING swSocket_write_blocking(:205): write 16 bytes failed, Error: Resource temporarily unavailable[11] [2020-05-21 15:04:43 *6222.4] WARNING swSocket_write_blocking(:205): write 16 bytes failed, Error: Resource temporarily unavailable[11] ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 期待: 可以正常压测出服务端接口最大QPS 错误: 目前报错,无法测试性能
发布于6年前 · 11 次浏览 · 来自
提问
Kunkka Wu
### 问题描述 DTLS服务压测是时候报错:PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] ### Swoole版本,PHP版本,以及操作系统版本信息 PHP:7.3.16 Swoole: 4.5.0RC1 ### 相关代码 #### 客户端压测命令 ``` php sync.php -c 200 -n 10000 -s 127.0.0.1 -f dtls2 ``` #### 客户端函数dtls2 ``` //参考udp2 function dtls2(Swoole_Benchmark $bc) { static $fp; $start = microtime(true); if (empty($fp)) { $u = parse_url($bc->server_url); $fp = new Swoole\Client(SWOOLE_SOCK_UDP | SWOOLE_SSL); $fp->connect('127.0.0.1', 9595, 0.5, 0); $end = microtime(true); $conn_use = $end - $start; $bc->max_conn_time = $conn_use; $start = $end; } /*--------写入Sokcet-------*/ $fp->send("hello"); $end = microtime(true); $write_use = $end - $start; if ($write_use > $bc->max_write_time) { $bc->max_write_time = $write_use; } $start = $end; /*--------读取Sokcet-------*/ $ret = $fp->recv(); if (empty($ret)) { return false; } $end = microtime(true); $read_use = $end - $start; if ($read_use > $bc->max_read_time) { $bc->max_read_time = $read_use; } return true; } ``` #### 客户端报错 ``` PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] in /var/www/html/dnsapi/sync.php on line 286 PHP Warning: Swoole\Client::recv(): recv() failed. Error: Resource temporarily unavailable [11] in /var/www/html/dnsapi/sync.php on line 286 ``` #### 服务端报错 ``` [2020-05-21 15:04:42 *6220.2] WARNING swSocket_write_blocking(:205): write 16 bytes failed, Error: Resource temporarily unavailable[11] [2020-05-21 15:04:43 *6222.4] WARNING swSocket_write_blocking(:205): write 16 bytes failed, Error: Resource temporarily unavailable[11] ``` ### 你期待的结果是什么?实际看到的错误信息又是什么? 期待: 可以正常压测出服务端接口最大QPS 错误: 目前报错,无法测试性能
赞
0
收藏
提问
分享
讨论
建议
公告
开发框架
CodeGalaxy
登录
后参与评论
评论
2020-05-24
Twosee
请使用协程Socket或协程客户端
赞
0
回复
2020-09-16
kis龍
请看 https://wiki.swoole.com/#/question/use?id=resource-temporarily-unavailable-11
赞
0
回复