首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >加速度计与多台设备实时数据的集成

加速度计与多台设备实时数据的集成
EN

Software Engineering用户
提问于 2020-03-03 12:34:26
回答 1查看 158关注 0票数 0

我正在为蹦床公园设计一个简单的游戏化系统的MVP (S)。

外部公司正在为客户提供手镯,然后在他们自己的web应用程序中收集这些数据,在那里他们从加速度计读数(x,y,z)中提取诸如“空中时间”、“跳跃次数”等in实时数据。

我需要以某种方式接收这些转换后的数据,并将其显示在记分板上(除其他外)。我的问题是如何将他们的数据集成到我的系统中。

First我考虑了最简单的方案--一个蹦床公园和10个手镯。

最简单的解决方案是通过websocket直接将我的web应用程序与他们的web应用程序连接起来,实时接收从手镯中转换出来的数据,并在我的网站上更新评分。

当我考虑将应用程序扩展到多个蹦床公园和数百/数千个手镯时,Things开始崩溃。

我开始研究一些集成模式,但这是一个非常广泛的领域,我对这样的事情很陌生。我偶然发现了名为<#>Apache Kafka的技术,它处理的是streaming数据(不知道手镯中的数据是否可以称为流数据,还是更多地保留用于音频/视频流(例如在twitch或netflix上)之类的内容?)

因此,我提出的基本架构是这样的(我不知道它是否有任何意义,对于Apache来说是一个好的用例,在我的场景中它是不是一个过火的例子):

  1. 外部公司从数千个手镯中收集数据,并将数据(从"x、y、z“读数转换为”空中时间“或”发生跳转“等)。
  2. 转换后的数据将在AWS上发布给Apache (each蹦床公园有自己的主题?)
  3. 我运行我的web应用程序的多个实例,每个蹦床公园一个,它们都订阅1主题每个,它们都连接到same数据库 (PostgreSQL on AWS),这样用户就可以在不同的蹦床公园之间运行,并且仍然保持所有的数据持久性。
  4. 我使用来自阿帕查卡夫卡的数据,并使用它作为我的内部原因(例如。计算当前手镯用户得分)

所以我的问题是:

  1. 那建筑有什么意义吗?
  2. 这是阿帕查卡夫卡的一个好用例,还是这是一个过火?或者也许有更好的技术可以使用?也许RabbitMQ就够了?
  3. 不确定是否应该有一个中央web应用程序来收集所有蹦床公园的数据,或者我是否应该把它分散到许多较小的应用中,每个蹦床公园都有一个,但是我仍然需要一些中央服务器来协调……
EN

回答 1

Software Engineering用户

发布于 2020-03-11 07:32:34

我们不知道来自供应商的数据是如何提供的,您是否可以让他们直接向某个代理广播他们的数据。无论如何,我的两分是:

  • RabbitMQ应该很好,即使他们每100 if提供一次数据,也不意味着如果他们正在聚合加速度计读数,那么阅读每一次更新都是有意义的。
  • 像Postgres这样的关系数据库对于这个简单的时间序列数据没有真正的意义,我会使用类似于MongoDB的东西
票数 -1
EN
页面原文内容由Software Engineering提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://softwareengineering.stackexchange.com/questions/406041

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档