具有实时数据传输的Web服务

时间:2014-05-09 13:22:05

标签: web-services google-app-engine rest azure

我正在开发一款Android应用程序,旨在显示无线电控制玩具车的GPS位置。我想这样做的方式是使用某种网络服务来保持汽车的位置,它有GPS和一些GSM SIM。移动应用程序可以从Web服务中检索数据。

是否可以使用网络服务进行实时数据传输? 假设我希望移动应用程序在更改后立即获取数据。

2 个答案:

答案 0 :(得分:0)

取决于您的意思"实时"和#34;一旦做出改变"。我在智能相机上工作,在装配线上运行,每秒60个单位(更快)。我在家里做爱好机器人,需要准确的移动到几毫米之内。这两个都被认为是"实时"一些人,但他们在容忍度方面差异大约是100倍。所以问题是你的实际需求是什么。   更好的是如何为自己做出决定。 :-)周转时间是一个明显的门控因素。您还必须考虑服务器上与服务器硬件和需求量相关的处理时间。现代无线以太网上的服务器将在10毫秒范围内(有很多原因可以改变)。这够快吗?您的服务器将采取什么措施来检索信息(是否涉及文件读取?数据库?)服务器不是PC吗? (嵌入式平台通常具有较少的资源)客户端使用GPS信息做什么?报告这个位置可能很好。陆地导航可能很好(尽管通过蜂窝网络的旅行时间会更长)。细粒度导航不适用于这种响应时间,但GPS无论如何都没有决心使这项工作成功。   希望这能让您了解需要考虑的变量。让我们知道您的决定,更重要的是为什么。 : - )

答案 1 :(得分:0)

具有1个核心的Azure Web角色实例可以以超过1000 /秒的速度轻松记录传入的地理定位数据。记录数据的方法有很多种 - 持久性和非持久性。 Windows ETW(Windows事件跟踪)可以以超过100倍的速率记录此类信息。您可以在Azure计算实例上使用它。更重要的是如何消化传入流,汇总并发送到您的移动客户端。同样,例如,使用Azure后端和Azure移动服务,很多方法都可以做到这一点。

我的代码使用了标准的asp.net MVC 5 webapi模板。我使用地理定位数据(负载测试高达1400 /秒)摄取了一个简单的JSON doc,并使用ETW将其写入Azure blob存储。随着您的进一步发展,请询问详细信息。