【问题标题】:How to make a countdown timer on appengine?如何在appengine上制作倒数计时器?
【发布时间】:2011-01-08 21:24:43
【问题描述】:

我正在开发一个应用程序(在 GAE 上),它需要一个倒数计时器并在计时器达到零时通知客户端。

通知客户端我正在使用 GAE Channel API。

有什么想法吗? (考虑到 GAE 限制。不使用 Java API 中的 Thread 或 Timer)。

【问题讨论】:

  • 客户端不能倒计时有什么原因吗?你想完成什么?
  • 问题是我必须在服务器对象过期时通知客户端。
  • 如果服务器知道对象什么时候过期,为什么不把time-until-expiry和页面一起发送,让客户端判断什么时候过期呢?
  • 这就是使用 GAE 任务队列的想法。

标签: java google-app-engine channel-api


【解决方案1】:

我不知道你需要多少可靠性/精度,反正这里有几个想法:

  1. 在使用相应的客户端 ID 在 memcache 上保存服务器本地时间后,通过 Channel API 向客户端发送 "timer-start" 消息,通过一些客户端处理它Javascript 计数器。当计时器结束或客户端完成任务时,调用服务器并执行您的业务逻辑。

  2. 使用TaskQueuecountdown参数,在向客户端发送"timer start"消息之前,添加一个给定倒计时的任务. n 秒后添加的任务将被触发,并应向客户端发送 "timer-over" 消息。

【讨论】:

    【解决方案2】:

    你不能只从客户端轮询信息吗? 或者您可以制作每分钟运行一次的 cron 任务并发送适当的消息。

    取决于您需要执行此操作的频率,您需要的精度

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多