使用websocat做WebSockets-TCP桥接时并发连接达60左右出现连接断开的资源耗尽排查咨询
websocat做WebSockets-TCP桥接时并发连接达60左右出现连接断开的资源耗尽排查咨询
我现在碰到了一个棘手的问题:我有一台TCP服务器和一批WebSocket客户端,用websocat作为两者之间的桥接工具。低并发情况下一切运行正常,但当并发连接数达到约60个时,连接就会随机断开。此时websocat会抛出错误:websocat: Transport endpoint is not connected (os error 107),而TCP服务器则会提示“Broken pipe errno=32”的报错。
我想搞清楚到底是什么资源耗尽导致了这个问题?
我已经做了以下验证:
- 如果连接是间隔建立而非同时并发的,就不会出现这个问题
- 直接通过TCP连接服务器、不经过websocat桥接的话,也不会出现这个问题
我运行的websocat命令如下:
websocat -k -B 1024000 -E --binary wss-l:127.0.0.1:7878 --pkcs12-der=./output.pkcs12 ssl-connect:tcp:127.0.0.1:7979
我觉得问题应该不是文件描述符耗尽,因为ulimit -n显示的数值是65535,远高于当前的并发数。但会不会是其他和socket或网络相关的系统限制被打满了,或者是websocat本身的某些资源限制导致的呢?
备注:内容来源于stack exchange,提问作者Joey Eremondi
相关产品推荐
相关产品推荐

