0

我有几个应用程序,一个作为客户端,另一个作为 REST 服务器。

为了提高性能,我决定使用 gzip,但在应用它并查看服务器日志后,我发现传输的数据大小没有任何差异。

1. 从我本地机器上的 REST 客户端执行的调用(没有 gzip):

2012-09-05 23:43:23.935 /rest/RatePeriod 200 3544ms 942kb Apache-HttpClient/4.0.1 (java 1.5)

2. 使用 gzip 进行调用

2012-09-05 23:42:10.466 /rest/RatePeriod 200 3776ms 22kb gzip

3. 从一个应用程序到另一个应用程序的调用(不接受 gzip 标头)

2012-09-05 22:44:11.691 /rest/RatePeriod/ 200 3489ms 22kb AppEngine-Google;(+http://code.google.com/appengine; appid: s~XXXXXX)

GAE 是否在实例之间的通信中自动应用某种压缩?

4

1 回答 1

2

如果 GAE 检测到支持请求的客户端,它会自动压缩请求。根据这个 SO question, urlfetch 隐式设置了 accept-encoding: gzip 标头。

appengine、urlfetch 和 content-length 标头,在这种情况下,看到应用的压缩是有意义的。

于 2012-09-06T00:13:53.080 回答