使用套接字的车辆跟踪。我应该 [打开]、[发送] 和 [关闭] 套接字,还是让它们始终打开

Vehicle Tracking using Sockets. Should i [Open], [Send] and [Close] the sockets, or leave them open throughout

我正在制作一个跟踪系统,我想知道,如果我有 1000 辆汽车(客户端)以 5 秒的间隔通过套接字(tcp)传输。如果客户端打开,发送然后关闭套接字。或者客户端应该在传输时保持套接字打开。

取决于很多事情。例如,如果有一个服务器可以同时处理套接字的最大数量,那么你最好关闭它们以防你有很多请求。同时,如果实时和快速连接对您来说真的很重要(每 5 秒 1 个请求是正常的,在我看来不会太高也不会太低),那么实时套接字连接更适合您。请注意,它们还使您能够在服务器端随时向客户端广播消息,而使用 none 持久连接,您必须广播消息作为对每 5 秒请求的响应。

您使用的标签表明您正在尝试在 websocket 或 HTTP 之间做出选择。最后,我应该澄清一下,这实际上取决于您的需求。使用 HTTP,您可以为更多客户端提供逻辑服务,而使用 websocket,您必须更加努力地处理服务器负载,同时您可以向客户端发送消息并加快跟踪速度,而且握手只会发生一次。