我试图on Rails的在Ruby中创建一个基于Web的游戏。我有一个名为“游戏”模式,即在对应于,我想在服务器调用游戏模型的update_game功能的时间数据库条目日期时间。根据游戏的设定,这可能是每30秒至每12小时。

Ruby on Rails的似乎只当它接收HTTP请求的工作;有一个漂亮的办法让我的比赛就定期进行独立的HTTP请求的基础上更新?

有帮助吗?

解决方案

我考虑 delayed_job的此。游戏开始时,你可以创建的第一个更新一个delayed_job的,直到它完成后,每一个可以运行在正确的时间间隔添加一个新的工作。

我会做大量的测试,虽然;) - 你不想让工作从你走

其他提示

导轨本身不这样做; cron的做到这一点。红宝石确实,但是,有名为每当让用户轻松的新的cron作业的申报和部署宝石。

不过,如果你真的要想到大量的游戏,每30秒更新可靠,你可能要采取不同的方法,如果更新的游戏将采取任何时间显著量。也许一旦游戏被访问时,游戏可以运行更新根据需要多次(例如,如果3分钟已经过去了,间隔为30秒,运行6周更新一次请求)。这可能是也可能不是你设置一个不错的选择,然而,找出哪些方法是你的目的更可行。

看到后台处理选项以及可能的cron。

我喜欢宝石“鲁弗斯调度”中的Rails其工作,虽然我不知道你可以以编程方式添加更多的任务吧。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top