如何处理渠道api速率限制?

时间:2013-01-18 15:04:41

标签: google-app-engine channel-api gae-quotas

我需要实现像stackoverflow这样的实时通知系统(当有人在问题中添加答案/评论时)到我的网站。我开始知道通道API是在appengine上实现它的最简单方法。但我被渠道API的配额限制所收回。启用结算时,只能创建60个令牌/分钟。

  • 当您遇到流量高峰时,如何处理此渠道费率限制(1000 new-users / sec)?
  • 如何管理5000个用户(在任何时间点)?
  • 令牌的最长到期时间是什么?

    *假设每个用户都应该获得一个令牌。

1 个答案:

答案 0 :(得分:4)

对于通知某人已经添加了他们正在查看的问题的答案的简单用例,通道API似乎有点过分。似乎Channel API更适合于几秒延迟会导致不良后果的用例。

如果您需要做的就是每隔几秒钟更新用户他们正在查看的内容发生了什么事情,您可以选择最基本的短轮询方法。

页面上的内容如下:

function doPoll(){
    $.post('ajax/test.html', function(data) {
        alert(data);  // process results here
        setTimeout(doPoll,5000);
    });
}

来源:jQuery, simple polling example

每当进行更改时,将其加载到memcache中。 “ajax / test.html”的帖子会转到一个处理程序,它应检查memcache是​​否有任何更新。这样您就不会遇到数据存储区。