所有,
我们需要开发一个基于天蓝色的平台,用户可以在该平台上配置多个药物仪器,开始对它们进行测量,并对测量数据进行分析。基于天蓝色的平台中的典型组件如下
1 -基于.NET的4个客户端应用程序运行在连接到每个仪器的计算机上.这个客户端应用程序应该接收来自azure平台的start测量命令,执行测量并将结果更新回azure*
2 -一组可能基于REST的服务,它将从客户端应用程序获得结果并更新云上的数据库。
3 -一组服务和业务逻辑,可用于对数据进行分析。
4 -一个asp.net web应用程序,用户可以查看仪器细节、开始测量等。
Azure平台与客户端应用程序之间存在双向通信,即,客户端需要将结果更新到azure,而azure需要通过客户机应用程序在仪器上启动测量。
在这种情况下,建议采用什么方法来让azure平台与客户进行通信。是否有下列任何一种
1 -在客户机和服务器之间创建一个双工服务,并提供一个回调接口来启动度量。
2 -为每个客户端创建一个使用Azure消息队列的命令队列。当需要启动度量时,消息将被放到队列中。客户端应用程序将始终从队列中读取并执行命令
或者我们有其他方法来做这件事,任何帮助都是非常感谢的。
发布于 2014-05-02 18:25:14
我们并不完全理解您的场景及其周围的约束,但是作为指针,我们已经看到很多客户使用Azure存储队列来实现主工作方案(一些组件向适当的队列中添加消息以完成工作(在您的情况下进行度量),并且工作人员轮询队列以处理此工作(在本例中,客户端计算机与您的设备连接)。
在将结果存储回方面,您的主组件可以提供对客户端的SAS访问,以便将结果写回Azure存储帐户中的特定blob,并让您的服务和业务逻辑监视blob的存在来启动您的分析。
上述方法将使客户端与服务器分离,并通过存储实现异步通信。同样,这些只是指点,您将是选择适合您的需求的正确方法的最佳人选。
发布于 2014-05-05 16:36:35
对于服务器和客户端之间的通信,您可以使用SignalR http://signalr.net/在Azure上支持两种形式的消息传递系统“作为服务”,它们是服务总线和消息队列--参见此链接http://msdn.microsoft.com/en-us/library/hh767287.aspx
https://stackoverflow.com/questions/23370621
复制相似问题