Facebook应用程序被限制
我正在使用一个应用程序,它在发出任何API请求时突然(在过去一周左右)开始收到以下响应:Facebook应用程序被限制,facebook,facebook-graph-api,throttling,Facebook,Facebook Graph Api,Throttling,我正在使用一个应用程序,它在发出任何API请求时突然(在过去一周左右)开始收到以下响应: { "error": { "message": "(#4) Application request limit reached", "type": "OAuthException", "code": 4 } } 我的印象是,API限制是每个身份验证令牌、每个IP,但一旦发生这种情况,就会影响到每个使用该应用程序的人。在开发者洞察下,我看到: Restrict
{
"error": {
"message": "(#4) Application request limit reached",
"type": "OAuthException",
"code": 4
}
}
我的印象是,API限制是每个身份验证令牌、每个IP,但一旦发生这种情况,就会影响到每个使用该应用程序的人。在开发者洞察下,我看到:
Restrictions
App is unrestricted.
API Throttling - 21 hours, 42 minutes
Too Many Calls - 21 hours, 42 minutes
Method Fraction of Budget
gr:get:User/home 441%
gr:get:Post/likes 145%
gr:get:User/feed 107%
gr:get:/fql 65%
gr:get:User/inbox 51%
gr:get:Post 26%
gr:get:User/events 20%
gr:get:User/notifications 18%
gr:get:Page/feed 18%
gr:get:ObjectComment 4.6%
Calls Are Too CPU Intensive - 21 hours, 2 minutes
Method Fraction of Budget
gr:get:User/home 3.5k%
gr:get:User/feed 382%
gr:get:Page/feed 205%
gr:get:Post/likes 106%
gr:get:User/inbox 63%
gr:get:/fql 40%
gr:get:User/notifications 25%
gr:get:Post 16%
gr:get:User/events 7.4%
gr:get:ObjectComment 3.2%
Calls Access Too Much Data - 7 hours, 57 minutes
Method Fraction of Budget
gr:get:User/home 372%
gr:get:User/feed 11%
gr:get:User/notifications 3.5%
gr:get:/fql 1.7%
gr:get:User/inbox 1.1%
gr:get:User/events 0.19%
gr:get:Post 0.07%
gr:get:Thread 0.04%
gr:get:Status 0.03%
dialog:oauth 0.03%
API Throttling Warnings - 21 hours, 42 minutes
Too Many Calls - 21 hours, 42 minutes
Method Fraction of Budget
gr:get:User/home 882%
gr:get:Post/likes 291%
gr:get:User/feed 215%
gr:get:/fql 129%
gr:get:User/inbox 101%
gr:get:Post 52%
gr:get:User/events 40%
gr:get:User/notifications 37%
gr:get:Page/feed 35%
gr:get:ObjectComment 9.3%
Calls Are Too CPU Intensive - 21 hours, 42 minutes
Method Fraction of Budget
gr:get:User/home 7.1k%
gr:get:User/feed 742%
gr:get:Page/feed 410%
gr:get:Post/likes 213%
gr:get:User/inbox 124%
gr:get:/fql 78%
gr:get:User/notifications 49%
gr:get:Post 42%
gr:get:User/events 15%
gr:get:ObjectComment 6.3%
Calls Access Too Much Data - 12 hours, 45 minutes
Method Fraction of Budget
gr:get:User/home 715%
gr:get:User/feed 64%
gr:get:Page/feed 30%
gr:get:User/notifications 9.1%
gr:get:/fql 7.4%
gr:get:User/inbox 6.4%
gr:get:Post 2.2%
gr:get:User/events 0.64%
dialog:optin 0.16%
gr:get:Thread 0.07%
很明显,我在做FB不喜欢的事情,这限制了我的应用程序的访问。我每300秒才访问一次FB。是不是太频繁了?我试图利用实时更新,但我得到的更新是零星的;即使我看到Facebook官方网站的更新,它们也不总是能通过。因此,如果我在5分钟内没有找到任何实时更新,我只需从FB获取最新数据
当它运行时,我的应用程序运行良好。但我和我的用户每天至少会遇到一次这种限制性错误。当我开发应用程序时,只有少数几个测试人员,我们从未遇到过这个问题。自从该应用程序向更多用户开放以来,它才成为一个问题
我希望能在某处清楚地记录可能导致节流的限制
有什么想法吗?看起来你太频繁地获取/me/home,这占用了太多的CPU时间-你是在循环中不断轮询还是什么?最初,是的。现在我正在使用实时更新。问题在于,实时更新是随意的。我可以在facebook.com上看到我自己账户的更新,但我的服务器很少会收到我的uid的更新,除非我在自己的墙上发布。所以,在我的应用程序中,我说如果5分钟后我没有从实时更新中得到任何东西,直接抓取/me/home。如果实时更新有效,我就不需要这样做了,但我看不到任何其他方法。我愿意接受建议。谢谢