如何在 nodejs 和 android 中设置实时地理定位跟踪

how to setup realtime geolocation tracking in nodejs and android

您好,我想为 Android 设备设置实时地理定位跟踪。这将在给定时间将数据发送到服务器的峰值达到约 500 台设备 运行 应用程序在前台(在任何给定时间平均约 5-10 台设备)。这将类似于 Uber 对跟踪设备所做的。

我知道可以使用 SocketIO 连接到此类服务器,但我不确定如何在服务器上处理此类数据。我听说 node.js 适用于这种情况,但我还没有在任何地方找到它的实现。另外,在 node.js 中可以使用什么样的数据存储来支持这一点。 RethinkDB 可以用于这样的实现吗?

我完全按照您的要求做了,唯一的区别是由于时间限制,我在客户端使用了 phonegap,但是如果您使用 Socket.io,它应该是相同的概念。

就可扩展性而言,该项目目前 运行 一次在 100 台设备上,每台设备每 5 秒更新一次位置,最慢为 1 分钟,具体取决于是否在移动(在正常条件下)。

在服务器端是 运行 nodeJs 服务器来处理信息,数据是作为原始 GPS 数据接收的,我正在使用 googlemaps 来获取大概的方向和当前的县(对于过滤目的)。

数据使用 mysql 保存到 mysql 数据库中,并推送到管理员电脑以在 google 地图上实时显示位置。

您可以缩放的唯一潜在问题是存储到数据库中的数据量,但这并不是每隔几个月清除一次 table 就无法解决的问题。

如果这听起来像您想要实现的目标,请告诉我,我将非常乐意提供更好的指导。