我们在移动Android / iPhone应用程序中使用GooglePlaces来下载附近的商店。 此外,我们在数据库中有我们想要向用户显示的商店。
现在,只要我们的移动应用程序有一个位置,就会触发两个http请求,一个发送到GooglePlaces,一个发送到我们的服务器。一旦两个requets完成,app就会构建一个组合列表并将其显示给用户。我们在两个请求中都谈到总共50 Kb。
我们正考虑向服务器执行一个请求。然后,我们自己的服务器会向GooglePlaces提出请求,将两个列表组合在一起,并将两者都发送回移动客户端。 优势在于我们的移动应用程序只需要发出一个请求,但当我们的服务器连接到googleplaces时可能会增加延迟。
测试第二个选项对我们来说可能需要一整天。有没有其他人遇到过类似的问题?你会推荐什么?
答案 0 :(得分:3)
这是一个权衡,但我们有类似的问题 - 我们的应用程序提出了独立请求(不是googleplaces,而是其他API),我们最终转换为单一的请求模型。我们的优势不仅仅是减少应用程序请求的数量。
我们可以在服务器上缓存一些请求。您的请求可能过于本地化,您需要检查TOS是否允许缓存,但对于我们来说,我们已经能够通过缓存结果来缓解一些延迟。它还允许我们在API中断期间优雅地降级。
我们能够在将数据发送到设备之前对其进行优化。我们过滤掉我们知道服务器上的应用程序未使用的任何数据元素,并优化xml,以便下载大小减少20%-30%。