改进ASP+SQLServer分页效率问题

以前公司管理网站的MM给我说这段时间公司服务器CPU占用率超高,经过N久排查,发现是公司平台网站每个频道的列表页列表记录时占用资源较高。
由于该系统的分页处理在设计时未考虑到大数据情况,所以现在在处理一个栏目25万+记录时显得力非常吃力,以至于TimeOut……
很显然问题出在两方面:
1、原来实现的方式是创建RecordSet时取出符合条件的所有记录,然后再根据当前页数判断将哪些记录输出。
2、显示了下拉式的跳转列表(用户直接点下拉菜单选择跳到多少行),会让程序生成20/5=4W条下拉菜单,这4W条的生成和传输都是个大包袱。
解决方法就是每次取数据时只取出当前页需要的数据,而不全部取出,并且取消下拉菜单。
可恶的是MSSQL中没有类似于MySql中的milit的语句。
于是使用下面的方法代替了,虽然我觉得该方法效率上还是不够快,不过目前没找到更好的方法了。
阅读全文…

In: 微软系Author: NakedFish-Comments (1)