NODE.JS - 创建 WEBSOCKET 服务器中心并提供给 WEBSOCKET 客户端

NODE.JS - CREATING WEBSOCKET SERVER HUB AND SERVING TO WEBSOCKET CLIENT

提问人:Melih Cihan GULER 提问时间:6/10/2022 更新时间:6/10/2022 访问量:154

问:

我有一个套接字服务器,用于将数据发送到我的网站前端,还有一个套接字客户端,用于连接不同的 websocket 服务器。

一旦我的socketClient收到数据,它就会触发我的socketServer,并通过修改它向我的前端发送一个大数据。从功能上讲,它都可以正常工作,但不幸的是,我需要连接更多的套接字服务器。然后,我的前端可能无法处理这些大数据,并且会崩溃。

目前,我正在尝试减少从套接字服务器接收的带宽。所以我不会向我的前端发送那么多交易。

这对你们大多数人来说可能很有趣,但这就是我防止不向我的前端发送那么多交易的方式。我知道套接字被设计为一旦它们收到的交易多于客户端句柄,它们就会自行停止。但是可以手动完成吗?或者我可以拒绝从套接字接收的数据。

const random = Math.floor(Math.random() * 400)
if (random > 398) {
    io.sockets.emit("message", FilterAndSortDatas(ws, datas));
}
node.js 套接字 websocket io ws

评论

0赞 treckstar 6/11/2022
你绝对可以关闭一个连接,有几种方法可以做到这一点。比如 - 我想你可以在这里找到你问题的答案:stackoverflow.com/questions/41074052/......WebSocket.terminate().close()
0赞 Melih Cihan GULER 6/11/2022
我不想关闭或终止。我只想忽略 %50% 的传入消息。这样,我的套接字客户端就不会被触发太多了。
0赞 treckstar 6/11/2022
套接字无法在不拒绝连接(关闭/终止)的情况下忽略传入消息。所以我认为这意味着你不必在服务器端发送那么多?如果您的套接字必须在不关闭的情况下忽略它,为什么发送所有数据?或者也许我只是不了解物流。
0赞 Melih Cihan GULER 6/11/2022
套接字连接到加密市场。几秒钟内有 1000 多次更改,每次更改都会触发套接字。
0赞 treckstar 6/11/2022
好吧,这增加了一些见解,但可以这样想:如果你试图节省带宽,而你的目标是忽略 50% 的数据进入你的网络套接字,这听起来像是它被浪费了。一端是发送到另一端,这忽略了 50%,这仍然会使用带宽,对吧?我认为这也是我没有得到的。

答: 暂无答案