用户跟踪,如果他停留在地理边界内



当用户在地理边界内停留超过一段时间时,我们需要更新某些集合中的字段值。例如,如果用户在地理边界内停留超过5分钟,则必须更新数据库中的值。我正在Nodejs中寻找有效的解决方案。我不知道如何处理这个问题。移动应用程序会不断地将用户的位置发送到节点js服务器。技术堆栈1.React原生移动应用程序2.Node js服务器3.Mongo数据库

我能想到的一种方法是设置一个中心点,然后考虑在某个固定半径的圆内跟踪用户位置,以其中心为中心点。现在,它给了我们一个如何选择中心点的问题。

最好的方法是考虑以下情况:

假设某一时刻,服务器接收到位置[x,y]。然后,假设半径为r,我们可以看到在接下来的5分钟内,接收到的位置是否位于半径r的圆内,以[x,y]为中心。为了防止服务器的位置过载,我们可以每半分钟左右发送一次用户位置。如果持续五分钟,则位置将保持在圆圈中。然后我们可以保存位置。

这不是一个确切的答案,但希望它能成为一个起点。

最新更新