我正在构建一个简单的“玩一个随机的对手”后端使用Goole应用引擎。到目前为止,我正在添加每个想要在Datastore中播放“表”的用户。一旦有超过一个球员在数据存储,我可以开始匹配他们。
用Cron调度任务看起来对这项工作很有希望,直到我看到最低分辨率似乎是很细的。如果有大量的球员签约,我希望他们能够快速的被匹配,而不必等待一分钟(最糟糕的情况)。
我曾想过让servlet将“对随机对手的游戏”请求帖子发送到一个任务队列中,以便进行匹配,但我认为这将导致在从Datastore读取数据并在匹配之后从“随机”表中删除细节时引起很多争论?
基本上,我想要一个将进行匹配的工人,我想不时地向这个工人发出信号,现在是一个很好的时间来尝试与对手进行匹配。
对于什么才是正确的行动方针,有什么建议吗?
发布于 2012-03-25 13:29:59
您可以通过事务保证独占访问:
更新:
另外,你可以通过拉动队列实现你所需要的东西。与上面的场景相同,您只需检查拉队列中是否有任务,如果存在则检索,如果没有,则创建新的任务。
https://stackoverflow.com/questions/9859665
复制相似问题