java - 如何优化 REST API 调用

标签 java javascript rest mobile

我正在构建 Mash up 移动应用程序。我需要调用我的 API 提供程序并与 Facebook 、 twitter 等集成。在此过程中,我必须对同一域进行多个 REST API 调用(当然具有不同的路径和查询参数)。此外,API 调用必须是连续的,因为需要调用一个结果才能调用下一个。我可以通过哪些方式优化这些 http 调用以避免往返。欢迎对 java 和 js 提出建议

最佳答案

规定的要求很广泛。由于您使用的是公共(public)第三方 API,这在某种程度上限制了可能的优化范围。您绝对无法做任何事情来加速 API,因为它们不属于您。

一般来说,我建议遵循指南,这将帮助您提出更好的应用程序。

  1. 经验法则是尽可能少地调用 API
  2. 减少网络调用(由 API 调用产生)意味着设备 radio (用于通过空中与服务器通信)的使用频率降低,因此所需的电量也减少。
  3. 现在,减少通话次数可能并不总是一种选择。因此,请仔细研究公共(public) API 文档,确保您了解所需 API 的所有详细信息。
  4. 例如,可能有一个 API 可以在传递标识符时提供实体的详细信息。如果您需要 5 个这样的实体的详细信息,那么应该有一个 API 可以获取一组 ID 并立即返回所有详细信息。这样您就可以节省多次通话时间
  5. 缓存 是减少 API 调用次数的非常有效的方法。因此,查找从服务器接收到的任何可以缓存一段时间的数据。
  6. 请注意,缓存需要更多内存,因此请确保您了解其含义并据此决定需要缓存的数据量。
  7. 除了内存,数据也可以缓存在磁盘上,这将有助于减少内存使用。不知道你是不是安卓的请refer to this related post .

在旁注中,您可以引用以下链接,这些链接提供了开发移动应用程序的一般指南。

  1. Make your application blazing fast .
  2. Optimizing a Mobile App for Mobile network .

请注意,这些是一般准则。有些可能不适用于您的特定用例。

关于java - 如何优化 REST API 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19193985/

相关文章:

javascript - 如何将属性访问器作为函数参数传递?

rest - 如何找到Cloud Firestore项目的数据库ID?

java - 在范围 bukkit 编码中无法访问该类型的封闭实例

java - Selenium Webdriver 列表与 WebElements

javascript - 如何通过history.push将对象发送到我重定向到的页面| react

python - Django休息框架: How can I display m2m and foreignkey fields besides id?

javascript - 如何使用rest服务url从嵌套json读取数据

java - 为什么这段 Java 代码比它下面的 Objective-C 代码运行得更快?

java - 如何将不同的值传递给 scala 对象中的变量

javascript - 使用 d3 和 JSON 数据在同一页面中创建多个饼图