我正在使用 siege 为我的 node.js 服务器(一个小型 web 应用程序)做一些负载测试。我可以看到,即使是像 300 这样的少量并发连接,它也会显示一些错误
siege -c 300 -n myserver.com:3000
然后我可以看到一些结果,例如
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
[error] socket: read error Connection reset by peer sock.c:460: Connection reset by peer
我可以看到服务器正在关闭连接。为什么会这样。我该如何调试它。我有一台运行在 4GB 内存的 Macbook pro 上的服务器。我想让你知道我使用过 websockets。即客户端访问运行在 node.js 上的 Web 服务器返回的页面。然后,此页面使用 websockets 连接到同一服务器以进行双向通信。什么可能导致这样的问题?