【发布时间】:2018-02-09 09:08:24
【问题描述】:
背景
我有一个基于 Node 和 React 的应用程序。我正在使用 Firebase 作为我的存储和数据库。在我的应用程序中,用户可以填写一张表格,在其中上传图片并选择将图片添加到他们网站的时间。我像这样将每个图像更新保存为我的 Firebase 数据库中的一个对象。图片按更新时间升序排列。
user-name: {
images: [
{
src: 'image-src-url',
updateTime: 1503953587727
}
{
src: 'image-src-url',
updateTime: 1503958424838
}
]
}
缩放
我的应用程序数据库可能会因大量用户和图像而变得非常大。我想确保可扩展性。
问题
如何检查何时满足特定图像对象时间然后执行功能? (我不需要关于正在运行的实际功能的帮助,只是在特定时间检查数据库。)
尝试
我考虑过使用node-cron 执行一项 cron 作业,它每 60 秒检查一次整个数据库(用户只能指定图像更新的分钟数,而不是秒数。)然后,如果它找到匹配的 updateTime 并执行我的功能。我主要担心 cron 作业需要一段时间来搜索数据库,并且可能会错过时间。
我还考虑过用户何时安排新的更新,然后为该时间动态创建特定的 cron 作业。我不确定如何做到这一点。
还有其他可行的方法吗?我对 node-cron 的担忧是否无效?
【问题讨论】:
标签: node.js firebase firebase-realtime-database cron