进程间通信 - 现代选择?

问题描述 投票:2回答:3

我正在开发一个带有Windows服务和前端UI的系统,用于配置和控制Windows服务。我会使用.net 4.6。

该服务将产生多个服务器,用户可以通过UI创建,启动和停止这些服务器。

研究我的UI控制服务和从服务器接收状态信息的最佳方式。

根据我的研究,这些是我发现的:

  1. SQLITE - 创建UI写入命令的消息队列,服务器将定期读取并响应另一个消息队列。不理想,因为它不活,需要一个投票系统。
  2. 命名/匿名管道 - 实时请求/响应。可行,但在处理与单个服务器通信的多个客户端时,它有点笨拙。
  3. WCF - 实时请求/响应。除了用户需要担心为系统运行配置有效端口之外,很好并且易于实现。
  4. 滚动我自己的通信协议 - 实时请求/响应,但同样的问题适用于选择端口号。

今天的技术还缺少什么?

c# .net wcf ipc named-pipes
3个回答
0
投票

我实际上并没有意识到命名管道可以与WCF一起使用。发现这篇文章很理想。非常容易实现,用户不必担心选择IP端口等。

https://stackoverflow.com/a/7833188/1680271


0
投票

0
投票

信号员和OWIN / Katana

https://docs.microsoft.com/en-us/aspnet/signalr/overview/deployment/tutorial-signalr-self-host

做简单的HTTP POST / GET请求和响应,使用Signalr可以进行实时发布/订阅。有关详细介绍,请参见链接

© www.soinside.com 2019 - 2024. All rights reserved.