使用REST服务进行高速数据采集

时间:2013-09-07 17:28:44

标签: wcf rest data-acquisition

我们需要开发一个基于REST的高速WCF服务,它将用于更新2000个数据点,每个数据点在25毫秒变化。是否可以使用WCF实现这种高速数据采集

2 个答案:

答案 0 :(得分:0)

使用WCF是的。我不确定REST是您尝试解决的问题类型的最佳架构风格。我也想知道HTTP是否合适。

话虽如此,您可能需要研究CORE,这是在数据采集等高度受限的环境中应用REST的努力。

答案 1 :(得分:0)

以下是我理解您的问题的方法:您希望每25毫秒或每秒40 x的新数据值。有一个设备有2000个离散数据值,这意味着每个设备的遥测流量大约为每秒80,000个值。您还有多个设备,因此您的吞吐量将高于此值,例如10台设备每秒800,000次更新。

在这种情况下,我不希望服务层成为约束,原因很简单,通过添加更多主机来接收消息并在它们之间进行负载平衡,始终可以扩展服务层。我担心的是所有交易必须在同一域内处理的地方。例如,所有这些数据都汇集在一个关系数据库中吗?在这种情况下,您可能会遇到事务吞吐量问题。

您的架构中似乎存在问题的另一个领域是设备本身。一台设备是否能够以80 kHz的频率收集和发送值?这是REST协议可能具有过高开销的地方。因此,设备而非服务器约束可能会促使您找到更有效的协议。这可能是保证直接针对套接字编写自定义协议的情况,但这取决于您的设备。