rethink/couch db 手动触发并执行脚本

rethink/couch db manual trigger and executing a script

我正在做一个项目,我必须在特定的日期和时间向用户发送活动邮件。

技术:节点,Rethinkdb/Couchdb

请不要建议 cron 作业。

我想用什么: 我将使用自定义触发器,其中 db 将通过检查当前日期与保存的活动日期(开始日期和结束日期)来触发事件。如果它与活动日期匹配(即当前日期介于开始日期和结束日期之间),我将 运行 nodejs 脚本发送邮件。

那么couchdb/rethinkdb是否有任何feature/functionality提供手动触发,可以检查数据库中的值并基于它可以执行脚本?

或者任何其他解决方案?

提前致谢。

数据库通常不会做这种事情。 CouchDB肯定没有这个功能。

但是,使用 CouchDB,您可以使用 _changes 提要相当轻松地构建它:http://docs.couchdb.org/en/2.0.0/api/database/changes.html — 这样您的脚本就可以侦听任何数据更新并根据您定义的任何标准(包括时间)采取行动。

我找到了解决此问题的方法。我使用节点调度模块来执行发送邮件的脚本。在此,我面临的问题是,每当服务器重新启动时,cron 就会被刷新,所以每次服务器重新启动时,我都会通过将它们放在 mongodb.

中来创建它们