我有一个现有的Android游戏,它使用GAE来获得总分并生成排行榜。然而,即使有10个同时使用的用户,我也看到了各种可怕的奇怪现象。
每场比赛持续3分钟。定时由运行任务的同步CRON条目强制执行。
步骤0
username+score/etc
步骤1 (提交+5秒)由CRON发起:
F 221
步骤2:(提交+10秒):
clients.
打分(获取“最后一局”的指针、德鲁夫和发球结果)
步骤3:(提交+20秒):
步骤4:(提交+25秒):
我所看到的问题:
GAE不随机存储部分/全部提交的分数,或无法检索部分/全部分数来计算游戏的所有结果。
GAE有时服务同一板两次(即:同步CRON没有运行)。
GAE (wtf?)从来没有记录错误。这就像操作从来没有发生过,而不是一些随机错误。错误率约为2-5%的猜测,但在480游戏/天,这是大量的错误.被我的用户注意到了!
如果有人对更好的设计方法有任何建议,或者有一些评论,我们会非常感激的!我知道我可以通过使用memcache对结果进行改进,并将结果预转换为流(因为memcache使用泡菜)来提高性能,但我更感兴趣的是修复错误/等等。
发布于 2014-02-06 04:49:17
这样做的诀窍是:
在本地ram和预json中,memcache
依赖已修正的生成线程,并使用game ()
G 211
尝试过,但不起作用:
保持时间的任务(不总是运行,也不会在time)
https://stackoverflow.com/questions/8218310
复制相似问题