减少数据显示的响应时间
在这里我只说明下软件(程序)处理数据,提高性能方面的个人看法!
页面显示的文件大体流程如下:
提取数据的逻辑层
数据源
表现数据的表示层
对于开发小组的人员实现这种简单的逻辑显示是很容易的,但是对于提高数据显示性能问题我们要作一定的探讨:
1. 存储过程处理数据方面(逻辑层的数据提取方面):
a) 数据提取的时间随着记录集合的行的增加,从而提取时间也增加;也就是数据的提取时间和记录集合的行成正比!
我们先来看一个例子,你也可以通过实验进行相关的测试和验证:
一定量的数据(大小相同),我们对该数据进行验证我们测试的格式上的相关调整:
其他条件不变,把该定量的数据只作为一条记录集合我们提取出来;
其他条件不变,把该定量的数据用多条记录集合我们提取出来;
我们会发现对于相同的提取方法而言随着数据的行的递增,我们提取的时间就会增加,我们也可以从时间复杂度角度来看待这个问题:
对于存储过程提取数据都需要从已知的记录集合先进行遍历,找到满足条件的记录后在提取,多条记录那使其遍历的频率随着记录集合的行的增加而增加,也就是使其时间复杂度递增!从而我们看到这种模式下的正比关系!
B)当记录集合的行固定,我们只是相应增加它的列的数据量的大小;我们会得出 随着数据量的增加,那我们的时间复杂度几乎,甚至不变
我们可以采用类似以上的例子进行测试!我们会惊讶的发现这一规律!
结论:当然我们可以更抽象如下的
时间复杂度的增加空间复杂度一定增加,空间复杂度增加,时间复杂度不一定增加!
2. 表示层的数据显示方面:
对于优化bs下的数据显示方面,我们主要考虑到的是数据量的大小,对于提高界面的显示的响应速度问题我们不难发现数据量的大小是决定显示响应速度的必要前提,这一点是bs 的弱项!
举个例子说明:
对于我们常常上网冲浪的朋友会发现现在我们浏览的页面大幅广告的出现,一个我们还能忍受,但是如果这种大数据量的广告增多那我们需要阅读的主要东东就要延迟;如果等待的时间超过冲浪者的忍受限度的话,我们可以想象,他能做到的(change),这样那就失去了网站的吸引力了!(这只是一个小小的说明!)
我们目前考虑的解决方式:
1采用分页的效果来实现该显示过程。我们可以看到这种技术已经被广泛的应用于界面的显示方面;这一点上我们可以看到datagrid的强大的效果!
2.采用压缩技术,对数据控制!
3.我们可以控制数据的显示,提供给信息阅读者必要的数据信息,减少冗余!
以上是大体上对开发人员的处理程序性能方面的问题,仅仅是本人在开发过程中的一定的理解方面!如果大家还有更好的解决方法,可以mail我!或者直接提出一起探讨!