[英]Client - Server: If the clients announce their presence to the server, and then the server takes over, is it still client server, or is it P2P?
问候读者! 因此,我正在尝试开发客户端服务器系统。由于我以前没有设计过客户端服务器系统,所以我认为我会提出一个问题,看看这里的专家怎么说。
要求:.NET 3.5 WCF至少要有2台计算机(主服务器和从属计算机)。
用例是一个测试环境,从属服务器根据主服务器的要求运行测试。
问题:我希望从属设备定位并连接到主设备,然后由主设备控制并启动要运行的测试。 从站还发出进度报告:新的测试数据,意外事件等。
我感到困惑的部分是,如果奴隶开始与主人接触,那不是使他成为主人吗?
这是否意味着我在从属服务器和主服务器上都需要服务主机,以便它们可以启动活动?
客户端/服务器和主服务器/从服务器不要混淆。 主服务器控制操作,但服务器侦听连接。
如果您的客户(从属)正在发起所有联系,则您在主服务器上所需的就是监听这些请求(Web服务等)和处理系统。
我不知道您的问题为什么会被否决,对我来说似乎还可以:)
如果我是您,我可能会倾向于使用netMsmqBinding(我喜欢队列!)。 主机可以通过将消息放在MSMQ队列上来将请求分派给从机,而从机可以通过MSMQ将状态报告发送回主机。 这样,两个进程可以独立工作,并且您不必担心一个进程与另一个进程保持同步(除非一个进程完全陷入困境)。
为此,在两个过程中都需要一个ServiceHost。 主服务器需要托管一个netMsmq服务,而从服务器也需要托管。 每个都还需要一个客户端绑定来发送消息。
如果您需要更多并行处理,这还可以扩展从设备(或主设备)的数量。 (所有从站都可以从同一队列中提取消息)。
只是一个想法。
签出DuplexContracts,它应该使您知道可以调用客户端的方法。 WCF中也有事件处理,尽管它比普通的.NET事件需要更多的工作。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.