【发布时间】:2018-12-11 01:27:43
【问题描述】:
对于 Service Fabric 微服务中的一个远程端点,是否只有一个线程在监听它?谢谢。
【问题讨论】:
-
好吧,你可以很容易地找到它:使用休眠 10 秒的方法创建一个服务并调用它两次。是否会在 10 秒后才进行第二次通话(提示:答案是否定的)
标签: multithreading azure-service-fabric remoting
对于 Service Fabric 微服务中的一个远程端点,是否只有一个线程在监听它?谢谢。
【问题讨论】:
标签: multithreading azure-service-fabric remoting
如果您的字面意思是“侦听”,例如侦听传入连接,例如打开网络上的端口然后等待客户端连接到该端口的服务器套接字,那么可以。但是,如果您的意思是最终处理请求的线程,那么其中会有几个。事实上,你甚至可以控制这部分 -
FabricTransportServiceRemotingListener 接受具有名为 MaxConcurrentCalls 的属性的 FabricTransportRemotingListenerSettings。
使用 WcfServiceRemotingListener,它依赖于绑定。与 NetTcpBinding 一样,如果您没有明确指定绑定,这是默认设置,您将获得 MaxConnections 属性。 虽然不一样 - 它更多的是控制在被拒绝之前将排队的连接数。潜在地,您可以考虑实现自己的 IServiceRemotingMessageHandler,WcfServiceRemotingListener 在其构造函数之一中接受它,并在那里放置您自己的限制逻辑。
【讨论】: