2009-01-29 48 views
0

我开始进入陌生的领域,关注性能改进以及使用GWT构建的RIA(富Internet应用程序)。对于那些不熟悉GWT的人来说,基本上在部署时它只是纯粹的JavaScript。我们通过XMLHttpRequest使用REST风格的XML Web服务与服务器端进行交互。Rich Internet应用程序中的客户端缓存

我们的XML未编组到JavaScript对象中,并在应用程序中用于表示接口后面的数据模型。发生更改时,模型会更新并编组回到XML并发送回服务器。

我已经了解到性能(用户体验方面)的头号规则是尽可能少地提出请求。显然这提出了缓存的可能性。缓存对静态数据非常有用,但是在服务器上的数据可能发生变化的多用户系统中,情况会变得棘手。此外,由于我们希望完全避免不必要的请求,所以使用“Last-Modified”和“If-Modified-Since”请求还不够。

我试图弄清楚,在研究这些方法之前,浏览器中的缓存数据是否适合我们。我希望以前有人走过这条路。我在寻找类似的方法,总结经验教训,需要避免的事情,等

我很高兴在需要时提供更具体的信息...

回答

0

对于GWT,如果性能事项多给你,通过在单个请求中发送所需的所有数据而不是查询多个小数据,可以获得更好的性能。我建议不要客户端数据缓存,因为有很多问题需要保持数据与数据库同步。

此外,与传统的html应用程序相比,GWT已经具有很好的优势。除非你正在处理特殊数据(例如:不会过快陈旧 - 意味着大部分读取查询),我发现没有特别需要缓存。你最好做一个服务层缓存,因为大部分时间应该来自服务器端处理。

如果您可以提供有关应用性质的更多详细信息,也许可以得出一些不同的结论。

+0

我同意,批处理数据请求提供了一个很好的加速多个较小的请求。但是,我们正在解决棘手的问题是确定什么是“所有你需要的数据”。必须有一个上限。 – 2009-02-01 15:24:45