在提问之前让我解释一下我的情况。
我正处于 17 种不同的多人游戏的创作阶段,这些游戏可以直接从浏览器在线玩。
为此,我选择了 Silverlight。
将使用 Socket 进行通信。
图片 17 种不同类型的游戏,如国际象棋、双陆棋、 table 球和数百个在线用户使用绑定(bind)到同一端口号的套接字在客户端应用程序和服务器应用程序之间进行通信。
如果每种不同类型的游戏都使用另一个端口号,会不会更快(对于我的服务器)?国际象棋将使用 4502,双陆棋将使用 4503, table 球将使用 4504。
这会有所作为吗?或者我应该为所有游戏使用相同的端口号 4502,而不用担心会发生不好的事情?
最佳答案
已建立为服务器的套接字可以接受来自多个客户端的连接请求。原始服务器套接字不会成为连接的一部分。 accept 方法创建一个新的套接字,该套接字参与连接并返回这个套接字。服务器的原始套接字仍然可用于监听进一步的连接请求。
因此使用不同的服务器端口没有任何优势。毕竟所有网络服务器都在端口 80 上获得了所有请求并很好地处理了这一点。
关于silverlight - 同一端口上的多个套接字与多个端口上的多个套接字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1517508/