玩框架长期运行的工作

use*_*969 3 playframework

我有一些执行长动作的游戏工作(例如10秒).

他们所做的一些事情需要数据库事务,有些则不需要.

由于整个作业是单个事务,我将长时间打开db事务,这不是一个好习惯.

将工作划分为多个交易的最佳方法是什么?我应该使用JPAPlugin closeTx然后使用startTx吗?

Cod*_*nci 5

我不认为长时间运行的数据库查询是如此糟糕.然而,糟糕的是,http线程将在此期间阻塞其他线程.

因此,我建议寻找到期货,并且还使用挂起方法,从而使HTTP请求可以free'd了,你可以检查你的未来任务已定期完成,不会禁止其他传入的HTTP请求.

此外,在Play 1.2(即将推出测试版)中,它可以更好地支持FutureTasks并将响应延迟回浏览器.