【问题标题】:Google App Engine APIs that are irrelevant when using GWT? [closed]使用 GWT 时不相关的 Google App Engine API? [关闭]
【发布时间】:2012-08-22 17:55:50
【问题描述】:

我一直在阅读 GAE 和 GWT,似乎如果您将 GWT 应用程序部署到 GAE,那么以下 API 是不必要的:

  • 页面速度
  • 频道 API

由于 GWT 已经对所有客户端代码进行了超级优化,并且包含了所有必要的 AJAX 机制来生成“单页 Web 应用程序”,所以在我看来,在部署 GWT 应用程序时可以忽略这两者到 GAE。

我对这两个 API 的理解是 PageSpeed 有助于优化客户端代码(GWT 已经这样做了),并且 Channel API 用于长轮询(GWT 已过时)。

如果我不正确,请帮助我理解原因。或者,帮助说明 GWT 应用程序仍可从这些 API 中受益的场景。提前致谢!

【问题讨论】:

    标签: java google-app-engine gwt pagespeed channel-api


    【解决方案1】:

    我不认为它们是完全不相关的。

    • PageSpeed:老实说,我对PageSpeed 没有太多经验。 GWT 进行了大量优化以确保快速加载资源(免责声明:如果您使用的是ClientBundle)。因此,当您为您的 GWT 应用程序激活 PageSpeed 时,您可能看不到多少速度提升。但是根据文档,它说:

    PageSpeed 服务不会向您的用户提供陈旧的 HTML。通常 呈现页面所需的 95% 的字节是可缓存的,但 HTML 本身不是。 PageSpeed 服务通过以下方式加快页面的加载速度 缓存页面的可缓存部分(以及其他技术)。 这包括图像、JavaScript 和 CSS 等资源。请 参考关于控制什么资源PageSpeed的信息 服务缓存。

    因此,您可能可以通过配置为静态资源提供服务的 Web 服务器缓存它们自己来实现静态资源的缓存,但是我猜 PageSpeed 会为您提供开箱即用的功能。此外,与GAE 相比,Google 似乎会预取资源,然后从他们的服务器提供它们,这可能会针对提供静态资源进行优化。
    我建议您尝试一下,看看它有多大帮助。

    • Channel API:通道 API 可能对您的 GWT 应用程序非常有用。与传统的 AJAX 调用相比,长轮询具有不同的用例。例如,如果您想在 GWT 中创建一个基于 Web 的聊天应用程序,您可以使用 Channel API 来支持客户端和后端之间的“实时”通信。
      所以Channel API 肯定有它的用例,尽管 90% 的时间你可能会使用普通的 AJAX 调用。

    【讨论】:

      猜你喜欢
      • 2017-10-12
      • 2010-09-11
      • 1970-01-01
      • 2012-04-14
      • 2012-12-22
      • 1970-01-01
      • 2010-11-04
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多