我有一个需要编程接受来自在给定的环境不同的系统的TCP数据包的服务器应用程序。这些消息可以是消息类型的有限列表;例如新库存(新项目记录),库存位置更改(库存现在位于位置X),传送请求(请将库存ID XYZ从位置X移至位置Y)。TCP套接字(服务器)设计
我的问题是,为每个入站消息类型设置一个套接字(端口号)是一个好主意,这样我就可以避免在数据报中需要某种类型的标识符来指明它是什么类型的消息,因此让我知道消息的格式,以便我可以处理它?
我写断绝在.NET但TCP邮件的发件人是现有的,non-.NET系统。我的计划是设置一个将消息保存到MSMQ中进行进一步处理的异步服务器。 (http://msdn.microsoft.com/en-us/library/fx6588te(v=vs.110).aspx)
这无疑将是一个非常不寻常的* *的方式来做到这一点 - 这将需要更多的插座开销假设大多数客户端需要发送多于一个类型的消息。我不这样做 –
这样说吧:假设你必须在路由器上更改UDP数据包的路由。您希望与您的路由器的神秘和令人难以置信的命令界面交互多久?一个端口是绰绰有余.. –
@马丁eugh - 每次添加一个消息时,防火墙的变化:我的系统管理员会要求在血液 –