C# 不同网络中两个应用程序之间的命令
我想将命令从一个应用程序(例如,在移动设备上运行)发送到位于不同网络中的另一个应用程序(例如,在嵌入式设备上运行) 我不想使用VPN或类似端口转发的东西。因此,经过一些研究,我找到了一些其他方法来实现这一点,例如通过Azure service Bus之类的云消息服务 从第一个应用程序向服务总线发送命令/消息对我来说不是问题。但我真的不明白两个人是如何从云服务连接到第二台设备的?我知道我也可以从第二台设备向云服务发送消息,例如通过HTTPS。然后,云服务可以保持这种连接。只要连接处于活动状态,我就可以向第二台设备发送消息 但有几点我不明白:C# 不同网络中两个应用程序之间的命令,c#,sockets,azure,mqtt,azureservicebus,C#,Sockets,Azure,Mqtt,Azureservicebus,我想将命令从一个应用程序(例如,在移动设备上运行)发送到位于不同网络中的另一个应用程序(例如,在嵌入式设备上运行) 我不想使用VPN或类似端口转发的东西。因此,经过一些研究,我找到了一些其他方法来实现这一点,例如通过Azure service Bus之类的云消息服务 从第一个应用程序向服务总线发送命令/消息对我来说不是问题。但我真的不明白两个人是如何从云服务连接到第二台设备的?我知道我也可以从第二台设备向云服务发送消息,例如通过HTTPS。然后,云服务可以保持这种连接。只要连接处于活动状态,我就
- 当我拥有数千台设备时,让数千个连接保持活力不是一个问题吗李>
- 如果有新消息,第二个设备如何监听连接?在嵌入式设备上不需要太多资源吗李>
也许我可以使用web服务并实现MQTT代理 我认为前面提到的MQTT代理将帮助您实现这一点,特别是您的用例正是MQTT及其实现(代理和客户机)构建的目的 简化的故事如下: 应用程序上运行的MQTT客户端使用“主题”(思考路由密钥)将MQTT消息“发布”到MQTT代理。在您的设备上运行的MQTT客户端在代理上具有相同“主题”的订阅。这使代理能够将消息从应用程序路由到设备,而不需要它们相互了解 据我了解,你的问题如下:
对于符合标准的MQTT客户机软件,请查看。有关可用MQTT代理的最新列表,请咨询。您是否考虑过web服务。。?意思是创建一个以设备类型为参数的单一服务..或类似性质的东西..?@MethodMan我可以创建一个单一服务,但如何通过该服务获得与设备的连接?创建web服务时,您熟悉连接字符串等吗。。?我相信网上有很多关于你想做什么的例子。。此外,如果没有看到任何现有的代码,我也无法以这种或那种方式指导您。。sorry@MethodMan我可以使用连接字符串等来获得从设备到云服务或服务总线的连接。但我的问题是,使用消息服务从云/服务器到设备建立连接有何利弊。如果您的数据位于云上,假设每个设备都有一个不同的连接。那么您可以向配置文件dbconn和dbconn2添加两个连接字符串,例如,点击一个位置但指向另一个位置例如,对于2个不同的数据库,我不确定这有什么让人如此困惑。如果设备向代理发送第一条MQTT消息,那么设备和代理之间就有一个开放的连接。但是代理如何保持连接的开放性呢?如果双方都没有主动关闭连接,那么连接仍然是开放的。