一般新闻内容一经输入不会改变,使用静态页是最佳选择
如果内容页有一些动态内容(随时改变的)可以使用iframe或者ajax

解决方案 »

  1.   


    不管是否有一份“缓存是放在DISK上”,内存中的缓存都有用。之所以缓存,就是假设有人频繁访问同样的内容,因此内存中用于输出的数据刚刚释放掉就又要读进来,内存是“抖动”的。因此,缓存也是为了让内存的空间和时间不被浪费,哪怕你不是将主要的网页缓存1个小时而是仅仅缓存5秒钟,也是可以大大提高网站速度的。虽然在磁盘上保存html毫无必要,不过我不认为“IO操作缓慢”是什么问题。你测试过没有,读取一个网页到底占磁盘I/O的百分之多少?能够在定性以外拿出数字来大致说明你认为到底缓慢多少比例么?不过所谓“静态页面”,是指这些html文件根本不经过asp.net系统,也就是说即使你的web服务器上根本没有安装asp.net或者把asp.net卸掉,整个网站也可以访问。因为它只是一堆html页面嘛。这样做的目的让网站根本不劳驾asp.net去处理,而是更简单直接地下载到客户端。从asp.net角度去认为是“被缓存”就显得无关痛痒了。当然,静态网站能不能完成企业管理需要,我想你也很清楚。用asp.net开发本来应该是静态的网站(例如一些简单的企业宣传网站)是一种浪费,我想只是一些程序员的个人爱好。那类,应该使用html和javascript开发网站。
      

  2.   

    内存中缓存的页面,当没有什么人访问,就自动释放掉了。你可以算一算,你的“所有”被缓存起来网页能够占用多大的内存空间呢?这些控件折合成人民币我想不超过30块钱。一个网站不舍得花这么小的代价来尽量使用内存,观念比较落后了。把网站完全输出为html的方式,它脱离asp.net系统处理而使用最原始的web文件下载功能,因此在可靠性、输出的速度等方面都比asp.net程序大大提高,但是动态功能则大大降低。不要把它跟asp.net系统的缓存去对比,二者其实在核心价值方面没有可比性。
      

  3.   


    确实自己没有做过真正的测试与考究,如果放到内存中,太多的新闻页面都被缓存的话,会不会导致内存资源不够的情况呢?还有一个重要的问题,有没有一个更好的机制来解决,修改了NEWSID=1001的新闻,其对应的缓存会被自动清空。。用键依赖的方法吗?那样就100条新闻,就会有100个键。这样做的话,效率是否。。???