监视文件更改并使用文件中的新数据更新集合的最佳方法是什么?

What's the best way to monitor a file for changes and update a collection with new data from the file?

我有一个流星项目,它每天运行一次 python 脚本来查询 API 并将结果保存到 private 中的 JSON 文件中。流星服务器监视 JSON 文件的变化。当文件更改时,服务器读取并解析文件并相应地更新集合。

问题是 private 中的资产在 meteor 启动时加载并以只读方式复制到不同的资产文件夹中,因此脚本无法更改文件。

我也许可以更改该资产目标文件夹的权限,但这似乎很老套。无论如何,我不认为 private 中的资产是动态的。有人知道我如何完成这个流程吗?

最简单的解决方案可能是 Python 脚本将其 JSON 写入 Mongo 数据库。然后 Meteor 可以自动订阅对该集合所做的任何更改。

这是我最后做的:

我没有让 meteor 应用程序每天启动 python 脚本,而是将 python 脚本放在主机的文件系统上(在 meteor 应用程序包之外)并创建了一个 cron 作业在主机上每天 运行 它。 JSON 输出文件已保存到主机的文件系统。

然后,在我的流星应用程序中,我在触发文件读取的输出 JSON 上创建了一个文件监视。

我 运行遇到了 Meteor Up (mup) 的一些问题,所以请参阅我的另一个已回答问题