例如下面是生成的静态页面中的一个文章列表。 后面阅读次数如何及时更新??当用户打开了“这是一条测试的业界动态5”这篇文章,它的阅读次数加一,但是如何在文章列表中显示出来呢? 要把网站所有静态页面都生成一片吗?这样的话用户每看一篇文章,后台要把艘有页面生成一边太夸张了吧。那用访问量大的网站还不死机了。 
还有,就算是用JS?ID=33 这样的参数从数据库里读取,一个文章列表要几十条新闻,显示一个列表,就得访问几十次数据库,太夸张了吧。 有啥解决办法呢?
这是一条测试的业界动态1 [阅读85次] [10/1] 
这是一条测试的业界动态2 [阅读55次] [10/1] 
这是一条测试的业界动态3 [阅读35次] [10/1] 
这是一条测试的业界动态4 [阅读47次] [10/1] 
这是一条测试的业界动态5 [阅读44次] [10/1] 
这是一条测试的业界动态6 [阅读85次] [10/1] 
这是一条测试的业界动态7 [阅读66次] [10/1] 
这是一条测试的业界动态8 [阅读11次] [10/1] 
这是一条测试的业界动态9 [阅读70次] [10/1]

解决方案 »

  1.   

    可变数据.一般用JS 的AJAX再取一次.
      

  2.   

    个人认为.
    列表部分,应该是动态生成的.而不是静态.
    静态页面应该规划为那些内容不怎么变的.
    如:
    文章内容部分,你应该用静态.
    而文章显示页面可能会分为文章内容及其它附属信息部分(如 相关文章列表呀,本文章阅读数啊, 评论啊什么的)文章内容部分无疑应该用静态生成.
    而相关文章列表,本文阅读数,最近评论以及评论部分   都应该是用JS做AJAX调用读取(这个是你一次性以文章ID为KEY来读取,还是分多次读取,就看你的设计了.
    如果页面纯为文章列表而非文章阅读页. 那应该是用动态重写为静态. 如果非要用静态.
    那么,这些文章的附属信息,应该是把文章ID组织好,一次性用AJAX从数据库里得到信息列表....
      

  3.   

    列表显示就是动态JS加载,CSDN就是这样的
      

  4.   

    <a href="20070803.htm">这是一条测试的业界动态1 </a>[阅读<script src="文章.aspx?id=20070803"></script>次] [10/1] 其中 文章编号.aspx 是一个后台的程序 通过输入 javascript代码来达到目的例如:
     
     string id=Request["id"];
     ......
      中间入理
     ...... 
     int count=85; Response.Write("document.write('"+count+"')"); 通过在后台用javascript的方法输入是最理想最简单的方法
      

  5.   

    注:"文章.aspx"输出的必需要是纯 js 脚本也就是说把 "文章.aspx" 看作是一个 .js 脚本文件这种方法比 ajax 方法简单明了实用得多
      

  6.   

    showhappy楼上的说的很有道理,我看过现在腾讯他们也多是这样做的!
    -----------------------腾讯哪个网页有? 把网址发过来
      

  7.   

    同意这个:
    <script src="文章.aspx?id=20070803"></script>
    我就是这么做的!
      

  8.   

    感觉lz的方法还不如直接访问动态表
    比如读取50条记录,如果是按表方式直接读只要访问一次数据库
    而像ls的方法要分次读50个点击数,即便是连接池也是比较慢的(在数据库访问一步)
    如果一定要做高效的静态页
    可以把文章.aspx?id=20070803这个文件的执行改为缓存操作,用户点击加一的操作先在内存操作,而整个网站有一个守护进行固定间隔将点击率写入数据库(或者加载服务操作也行)
    这个是比较高效的做法,我认为
      

  9.   

    js + aspx,或者采用js + aspx + xml你可以把数据放在xml中.