关于性能改进和我们使用 GWT 构建的 RIA(富 Internet 应用程序),我开始涉足陌生领域。对于那些不熟悉 GWT 的人,基本上在部署时它只是纯 JavaScript。我们通过 XMLHttpRequest 使用 REST 样式的 XML Web 服务与服务器端交互。
我们的 XML 未编组为 JavaScript 对象,并在应用程序中用于表示接口背后的数据模型。发生更改时,模型会更新并编组回 XML 并发送回服务器。
我了解到性能的第一条规则(就用户体验而言)是尽可能少地发出请求。显然这带来了缓存的可能性。缓存非常适合静态数据,但在服务器上的数据可能会发生变化的多用户系统中,事情会变得很棘手。此外,使用“Last-Modified”和“If-Modified-Since”请求还不够,因为我们希望完全避免不必要的请求。
在研究这些方法之前,我试图弄清楚在浏览器中缓存数据是否适合我们。我希望有人曾经走过这条路。我正在寻找类似的方法、经验教训、要避免的事情等。
如果需要,我很乐意提供更具体的信息......