PHP 转发代理服务器 疑问

2017-06-08 17:41:34 +08:00
 bccber
客户端现在使用 UDP 和服务端通信,一些网络不好的用户,UDP 连接不上,会换成 HTTP 接口
HTTP 接口使用 php 开发,接收到客户端的 buffer 直接转到 UDP 服务器,接到数据后又直接发给客户端
由于需要根据不同的 buffer 转到不同的 UDP 服务器,不能使用开源的代理服务器
我想问题啊:如果并发很高,下面这段代码,会不会导致服务器端口耗光?
我们测试时 没有发现在 UDP 端口过多的情况,反而是 TCP 连接多了出现拒绝连接的情况

namespace App\Http\Controllers;
use Illuminate\Http\Request;

class MyController extends Controller {

private function sendUDP($buffer) {
$fp = stream_socket_client('udp://192.168.1.58:6897', $errno, $errstr);
if ($fp) {
fwrite($fp, $buffer);
$retBuffer = fread($fp, 1024);
fclose($fp);
return $retBuffer;
}
}
}
2700 次点击
所在节点    PHP
2 条回复
Fishdrowned
2017-06-08 19:24:51 +08:00
如果你用 nginx 转 php-fpm 的话不用担心端口被耗光,php 会阻塞请求的
owenliang
2017-06-08 20:03:55 +08:00
优化一下 tcp 内核参数 加快端口回收

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/367024

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX