有关多个 Facebook Json 请求的性能建议
performance advice regarding multiple facebook Json requests
我正在开发一个Facebook应用程序,可以搜索你职位附近的Facebook事件。唯一的方法是搜索您所在区域的所有地点 id,然后针对每个地点检查今天是否有事件。我遇到的问题是计算需要 1-1:30 分钟,这有点长。这是我使用的代码(我知道可能不是最好的):
foreach (var item in allPlacesIds)
{
RunOnUiThread (() =>loading.Text = string.Format ("Loading {0} possible events out of {1}",count,allPlacesIds.Count));
string query = string.Format ("{0}?&fields=id,name,events.fields(id,name,description,start_time,attending_count,declined_count,maybe_count,noreply_count).since({1}).until({2})", item,dateNow,dateTomorrow);
JsonObject result=(JsonObject)fb.Get (query, null);
try
{
JsonArray allEvents= (JsonArray)((JsonObject) result ["events"])["data"];
foreach (var events in allEvents)
{
Events theEvent= new Events(((JsonObject)events) ["id"].ToString(),
((JsonObject)events) ["name"].ToString(),
((JsonObject)events) ["description"].ToString(),
((JsonObject)events) ["start_time"].ToString(),
int.Parse(((JsonObject)events) ["attending_count"].ToString()),
int.Parse(((JsonObject)events) ["declined_count"].ToString()),
int.Parse(((JsonObject)events) ["maybe_count"].ToString()),
int.Parse(((JsonObject)events) ["noreply_count"].ToString()));
todaysEvents.Add(theEvent);
}
}
catch(Exception ex)
{
}
count++;
}
在尝试开始的地方,我曾经有一个 if,但这需要更长的时间,所以我用 try 块替换了它,因为结果为 null。
我知道这不完全是一个技术问题,但我觉得也许你们知道更快更好的实现,我唯一的其他选择是创建和托管一个 Web 服务并使用它来查询数据。 问题是我需要在服务器/真实 IP 上投入大量资金,然后我需要创建一个计划作业来每天更新数据。
每个 API 调用都需要一些时间,使其更快的唯一方法是使用批处理请求。以下是有关这些的文档: https://developers.facebook.com/docs/graph-api/making-multiple-requests
请记住,这不会算作一次 API 调用,它的数量仍然相同,因此请注意 API 限制。
相关文章:
- 函数参数中的数据与指定变量之间的任何性能差异
- 提高JQuery的性能
- ajax请求的顺序总是不同的
- Meteor如何接收HTTP请求
- 有没有一种方法可以防止img get请求使用css或js发生
- 从ajax请求中获取javascript对象
- JSONP请求返回结果,但也触发error_callback
- 在localhost Dev Box上测试JSONP请求的最佳方式
- Ajax请求文档就绪会导致jquery加载缓慢
- 使用正则表达式评估电子邮件地址时出现性能问题
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 有关多个 Facebook Json 请求的性能建议
- 请求进程中的节点 js 性能
- 并行 ajax 请求还是 sql 查询?[性能方面]
- 发出HTTP请求的Javascript函数的性能
- 从性能角度来看,每次点击都会发送Ajax请求,这对客户端来说代价高昂
- Marketo-Munchkin同步请求损害了JS的性能
- Node.js性能-读取文件一次或每次请求
- Node.js:SocketIO与http请求性能
- 使用 JSON 请求的 JavaScript 性能较慢