【问题标题】:HTTP POST Transmission suggestionHTTP POST 传输建议
【发布时间】:2016-09-12 20:22:45
【问题描述】:

我正在构建一个需要 Arduino 板将数据发送到服务器的系统。

应用的要求/限制是:

  1. 服务器必须接收数据并将其存储在 MySQL 数据库中。
  2. Web 应用程序用于绘制和绘制历史数据。
  3. 数据消耗很关键
  4. Web 应用程序还必须能够实时绘制数据。

到目前为止,系统运行良好,但需要优化。

目前采用的步骤是:

  1. 在 Arduino 板中累积数据 10 秒。
  2. 使用包含代表 10 条记录的 XML 字符串的数据使用 POST 将数据发送到服务器。
  3. 服务器解析接收到的 XML 并将值存储在数据库中。

这种方法适用于历史数据,但不适用于实时监控。 我的问题是:有没有区别:

  1. 累积数据并以 XML 格式发送,并且,
  2. 每秒发送一次数据。

在数据消耗方面,每秒发送一个POST请求是否太多?

谢谢

编辑:任何人都可以提供一个数学公式来对这两种方法在数据消耗方面进行基准测试吗?

【问题讨论】:

  • 你用什么来发送 HTTP 请求? GPRS,无线网络?发送 POST 都需要 1 秒以上。
  • 为了测试,我使用以太网连接。不过后面会改成3G

标签: mysql xml post arduino real-time


【解决方案1】:

对于您的数据消耗问题,您需要计算出每个POST 为您提供手机套餐的费用。我不知道是否有一个数学公式,但你可以很容易地测试和计算出来。

但是,使用 3G(甚至是 Wifi),功耗将是一个问题,尤其是如果您的电路使用电池供电;每个 POST 会爆发大约 1.5 安培,这对于每秒发送数据来说太过分了。

但是,为什么要每秒发送数据? 实时并不意味着每秒发送数据,它意味着至少与系统一样快。

例如,如果您发送温度,温度不会在一秒钟内从 0° 变为 100°。所以所有那些POSTs 将是对电力和数据的浪费。

您需要知道系统中的参数变化有多快,并相应地调整您的POST

【讨论】:

  • 功耗不是问题,因为系统没有电池供电。至于更新,系统实际上每秒更新一次:系统跟踪车辆。它需要每秒知道汽车的新坐标。
  • 好的。但是来自 GPRS/3G 模块的POST 仍然需要超过 1 秒才能完成。尝试测试您是否有可用的。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-07-08
相关资源
最近更新 更多