Sockets TCP多个连接与1个连接(应用程序管理)
我需要一些建议。。。我正在构建一个桌面应用程序,其中每个窗口都需要用户的持续输入(如单击、键入、鼠标移动等事件)才能发送到服务器。服务器还不断发送反馈,如(刷新对话框中的一些数据、文本、新对象等) 首先我想我会使用HTTP,但现在选择使用普通TCP 我的问题是:我应该使用一个TCP连接并在“应用程序层”处理来自服务器的所有信息,还是应该创建多个连接(比如每个窗口一个连接并让操作系统处理多个TCP管道) 我可以对这两个想法中的任何一个进行编程,但在性能和带宽方面谁会更有效率 更新1Sockets TCP多个连接与1个连接(应用程序管理),sockets,tcp,Sockets,Tcp,我需要一些建议。。。我正在构建一个桌面应用程序,其中每个窗口都需要用户的持续输入(如单击、键入、鼠标移动等事件)才能发送到服务器。服务器还不断发送反馈,如(刷新对话框中的一些数据、文本、新对象等) 首先我想我会使用HTTP,但现在选择使用普通TCP 我的问题是:我应该使用一个TCP连接并在“应用程序层”处理来自服务器的所有信息,还是应该创建多个连接(比如每个窗口一个连接并让操作系统处理多个TCP管道) 我可以对这两个想法中的任何一个进行编程,但在性能和带宽方面谁会更有效率 更新1 就像2000
- 就像2000个客户端同时使用该系统一样
- 每个客户端将同时使用2~3个窗口
- 在多个组件(在您的情况下为窗口)之间没有线头阻塞
- 即使在套接字层上也可以使用多处理/多线程(例如,您可以有1个线程/套接字)
- 您不需要自己在TCP之上构建多路复用器协议
- 你缺少短暂的港口。这通常不是一个问题,除非您正在讨论成千上万的长寿命套接字,或者您正在使用一些非常严格的NAT设备
- 每个插槽的操作系统开销(内存/处理能力)是不可忽略的。如果这对任何一个像样的现代操作系统来说都是真的,我会感到惊讶,但测量是知道的