大型网站性能优化策略的疑问???

aill
05-06-10 3 187

上次看到一个帖子说
sina他们都是把动态内容直接生成静态index.html文档,
用户直接访问index.html文件,
这种方法肯定是最好的,但是实现起来好像有些疑问,例如当用户正在访问的时候你能更改index.html文件的内容吗,

我的想法是同时有几个index.html的副本,例如index1.html,index2.html使用一个统一的Servlet作为入口,使用一个标记表示当时正在使用哪个文件例如index1.html,那么更新的时候就更新index2.html,更新完后改变标记,让下次访问的时候去访问index2.html,同时更新index1.html里的内容
用一个Servlet作为入口来决定访问index1还是index2

还有个问题,就是怎样去触发“更新网页”的事件,我考虑使用MDB,因为这样可以实现异步更新,但是又有个问题就是MDB不能访问本地文件系统

要不然就只能自己做一个线程定时去更新网页,但是这样显然没有MDB效率好

不知道bang有什么好的主意?

banq
2005-06-10 17:15

我以前写一个帖子,我并不认为静态Html就比动态快,所谓静态html也是要由apache这些语言进行运行输出,和Jsp经过tomcat运行输出没有区别,关键是静态的html的缓存。

所以缓存是大型网站性能优化的正确解决之道,是可伸缩的。但是这块技术如同数据库技术一样,同样自成体系,不是很简单。

anonymous
2005-07-06 21:41

sina的办法很简单的,不过一层窗户纸嘛:squid。
把squid反过来用,不就是一台缓存服务器嘛,多用几台,就可以称作分布式缓存服务器系统,太简单了是吧?!

yung
2005-07-07 09:25

>多用几台,就可以称作分布式缓存服务器系统
分布式缓存主要难点是更新缓存,一旦数据修改,所有的服务器的缓存都要被通知更新,而squid只是被动式缓存,只适合单向的媒体内容网站。