规则14 使用Ajax可缓存

1. Web2.0、DHTML、Ajax

  Web 2.0的关键概念包括类似应用程序的用户界面和来自多个Web Services的聚合信息。Web页面变得越来越像一个具有良好定义的输入、输出的应用程序。DHTML和Ajax是实现这些概念的技术;

  DHTML是允许在页面加载完毕后,HTML页面的表现能够变化。这使用Javascript和CSS与浏览器的DOM进行交互来实现。Ajax是DHTML中使用的一项技术,客户端可以获取和显示用户请求的新信息而无需重新加载页面;

  Ajax表示异步的JavaScript和XML(Asynchronous JavaScript and XML)。Ajax不是一个单独的、需要认可证的技术,而是一组技术,包括JavaScript、CSS、DOM和异步数据获取。Ajax的目的是为了突破Web本质的开始-停止交互方式。Ajax在UI和Web服务器间插入了一层,这个Ajax层位于客户端,与Web服务器进行交互以获取请求的信息,并与表现层交互,仅更新那些必要的组件。它将Web体验从”浏览页面“转变为”与应用程序进行交互“。

  Ajax应用程序可采用IFrame和XMLHttpRequest技术来实现。YUI进行Ajax开发比较好。

  

2. 异步和即时

  Ajax异步不意味着即时,但是用户等待时,UI仍然是可响应的;

  Ajax给交互设计师带来了更多的灵活性。然而,我们的能力越强大,在使用的时候越应该小心。我们必须小心地使用Ajax,确保它是优化了应用程序的用户体验,而不是恶化了。

 

3. 适用于Ajax请求的规则优化

  规则3——添加Expires头(最重要)

  规则4——压缩组件

  规则9——减少DNS查找

  规则10——精简Javascript

  规则11——避免重定向

  规则13——配置ETag

 

4. 缓存Ajax

  使用一个长久的Expires头;

  还要考虑响应的个性化和动态本质必须被反映到缓存中;

  对于隐私数据,大多会使用Cache-Control:no-store,这样响应写不到硬盘;

  对于隐私数据,最佳的方法是使用SSL,SSL的响应是可缓存的(firefox只能用于一次会话)——在确保数据隐私的同时在当前会话中缓存响应以改善用户体验。

 

posted on 2013-04-14 00:10  BigPalm  阅读(189)  评论(0编辑  收藏  举报

导航