2014-04-04 63 views
0

当我正在浏览interview questions(查看问题#2)的列表时,我凸显了这个概念。我不熟悉这个概念。可以缓存REST Web服务调用以提高性能

我看了一些文档,但找不到任何东西。有人可以解释这是什么意思?另外..如果可能的话......这是如何应用于Android的。

+0

我想,他们正在谈论服务器端(Apache)。它将自行准备一些受欢迎的请求,而不是每次都重新创建请求。 这并不意味着,您可以在应用程序中缓存REST WS。 通过这种方法,您可以提高用户(您的应用程序)的响应速度 – Defoncesko

回答

1

好,

事情要记住:

  • REST是无状态的,所以存储在客户端上没有会话数据。
  • 由于一个良好实施的REST API,服务器可以在两个 调用之间重新启动,因为每个数据都被传递到服务器,需要 来服务请求。 (可扩展性,可缓存性)
  • 与使用GET访问资源的 REST相比,Web服务主要使用POST方法进行操作。

一些事实:

  • 大部分由默认的Web服务器实现缓存GET请求,但 他们正式不缓存POST方法。 (服务器端缓存)
  • 您可以使用适用于HTTP GET任何高速缓存方法: http://www.symkat.com/understanding-http-caching(客户端缓存)

正如你可以看到最关键的是REST API使用GET了POST操作。在andorid中,您可以轻松实现If-Modified-Since,If-None-Match缓存方法中的任何一种。但是,服务器也必须支持这些方法。