【发布时间】:2023-03-30 21:30:01
【问题描述】:
我目前正在开发一个类似 Tiktok 的大型应用程序,其中一个视频将存在 5 天。我的问题应该如何安排在 5 天后删除视频? 2 我想出的方法是我可以构建一个后台服务工作者,它将不断循环遍历数据库并检查视频是否应该关闭,或者我可以将它放在 setTimeOut() 中 5 天,这意味着它会在 RAM 上,并且需要有一个服务来重新启动所有 setTimeOut(),以防服务器关闭。我正在使用 AWS EC2,所以我想知道哪种方法可以扩展并节省一些钱。谢谢。
【问题讨论】:
-
或者您通过操作系统的作业调度程序安排一个作业,该作业每天至少执行一次以删除内容。 Mysql 也有一个内置的调度器,但我可能还是会使用一个外部的调度器,因为 node.js 比 mysql 的 sql 语言具有更多的灵活性和特性。
-
我不会使用 setTimeout 方法 - 如果服务器出现故障怎么办......最好不时检查(可能由访问您的系统触发,即有人访问任何页面或其他,并且访问触发了“清理”)
标签: javascript mysql node.js amazon-web-services express