我需要定期检查数据库以获取更新记录。我目前使用TimerTask工作正常。但是,我发现它的效率不高并且消耗了大量的服务器资源。有没有一种解决方案可以满足我的要求但更好?
def checknewmessages() = Action{
request =>
TimerTask(5000){
//code to check database
}
}
答案 0 :(得分:0)
我可以想到两个解决方案:
请看这个例子 - https://github.com/sgodbillon/reactivemongo-tailablecursor-demo How to listen for changes to a MongoDB collection?
答案 1 :(得分:0)
如果你的逻辑在你的数据库(存储过程等)中,你可以简单地创建一个cron作业。
您还可以创建一个封装逻辑和计划的命令行脚本(cron再次)。
如果您的Web应用程序中有逻辑,则可以再次创建一个只对您的应用程序进行API调用的cron作业。