我有一个用例,必须定期在数据库中为用户创建一条记录。假设每个星期一每周一次/每两周一次。我可以通过两种方式实现它。
使用数据库触发器在该时间创建记录。但是我不知道该如何重复。当该触发器运行时,我必须为下一个计划创建一个触发器,我认为这不是正确的方法。
使用队列来处理调度和执行重复的作业。但是我想为每个用户添加工作并不是一个好主意。我可能是错的,但是没有其他方法可以实现我的目标。
我对两者之间的选择感到困惑。假设我每周星期一上午9:00必须为100万用户执行此操作
哪种方法可以扩展?
我将nodejs用作后端,并将Bull-Queue用作队列,将postgres用作数据库。
答案 0 :(得分:0)
使用数据库触发器在该时间创建记录。但是我不 知道如何重复。我必须为下一个创建触发器 安排此触发器运行的时间,我认为这是不正确的 方法。 -基于诸如内存,请求数量和代码质量等众多因素的正确方法。
所以我采用了第二种方法:
使用队列来处理调度和执行重复的作业。 但是我想为每个用户添加工作并不是一个好主意。我可能是 是错误的,但是没有其他方法可以实现我的目标。