我在同一台机器上有7个进程(C# .NET Framework),每个进程都封装了一个NServiceBus(网关)端点来与远程站点进程进行通信(基于MSMQ的传输,InMemroyPersistency).我想知道,从性能网络利用的角度来看,我是否应该将每个端点拆分开来使用它自己的端口,还是所有的端点都可以共享同一个端口来连接网关?接收通道 定义?
谢谢你
默认情况下,网关使用的是 HttpChannel
的并发量设置为1。假设你将每个通道的并发量设置为适合你的用例的一些可行的东西,并且考虑到该实现是非阻塞的,你只受到单个 HttpListener
可以处理的消息。
考虑到每个端点在处理消息方面应该有自己的责任,因此可能需要履行自己的服务级别协议,你可能希望对如何暴露这些端点有更多的控制。这就是说,从网关的角度来看,端口共享应该是可能的,我建议根据你对项目的要求进行负载测试,以做出正确的权衡。