关于 swoole_websocketd 连接 fd 的问题

2017-11-22 20:59:26 +08:00
 treedon
我测试过 每次一个新的链接就会在 fd 上面自增.
离开就会销毁, 下一个人链接又会自增
不知道这个 fd 的上线是多少? 是不是到了一定的数字之后会重新设置 1?
5387 次点击
所在节点    PHP
4 条回复
liverpool08
2017-11-22 21:01:26 +08:00
这个我记得文档里有说吧,要不就是他的社区里,最大到几百万还是几千万,过后就从 1 重新开始
treedon
2017-11-22 21:07:28 +08:00
@liverpool08 从 1 重新开始,..
万一之前的 1 没有断开链接, 那不就混淆了?
liverpool08
2017-11-23 09:12:50 +08:00
@treedon
1、fd 是一个自增数字,范围是 1 ~ 1600 万,fd 超过 1600 万后会自动从 1 开始进行复用
2、$fd 是复用的,当连接关闭后 fd 会被新进入的连接复用
3、正在维持的 TCP 连接 fd 不会被复用
这是文档中说的,按照第三条他应该会有检测机制吧,而且 1600w 基本上混淆的几率极小,不过我也没看源码
treedon
2017-11-23 09:14:55 +08:00
@liverpool08 好的 感谢回答^^

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

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

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

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

© 2021 V2EX