不用半个 .aspx——使用 Html+Ajax+Wcf 构建高性能的网站

  ASP.NET 确实很好很强大,但是对服务器资源的消耗也很多,因此一些大型网站更多的是采用静态页+ASP.NET实现,以减少服务器开支。笔者在此突发奇想了一番,想出一个折中的办法——将全部页面用静态页面(.htm)代替,并在需要与服务器交互的地方使用 Ajax+Wcf 实现。

  在以往的 Ajax 网页中,使用 .aspx 和 UpdatePanel 实现无刷新提交数据和延迟载入功能,但是 UpdatePanel 实际上是基于 PostBack,因此每次提交数据都会重新加载 .aspx,而对于延迟载入,更是需要两次加载 .aspx(访问的时候一次,UpdatePanel 加载内容时一次),而 .aspx 的开支本身也是不容小视的。

  既然使用 .aspx 只是为了在提交的时候才做出动态的处理(延迟载入本身也是提交一个加载数据的 PostBack),那就可以用 Html+Ajax+Wcf 来构建了,一来 WCF 服务的执行效率比 .aspx 稍微高一些,二来减轻了服务器负担,减少了开支。

  不过 Ajax 对搜索引擎的不友好问题便出现了。因此,对于重视搜索引擎的网站,可以考虑动态生成静态页,把需要被搜索到数据(如文章内容)放进 Html 中,而不重要的数据(如访问次数)通过 Ajax+Wcf 载入,提交数据不做更改,可以使搜索引擎搜索到的几率更大(因为搜索引擎更青睐 .htm)。

  一点点不成熟的思考,还希望大家也能参与讨论。

posted @ 2008-09-26 16:33  田嵩  阅读(1571)  评论(6编辑  收藏  举报