提高ASP页面执行效率的方法分析

这些大都是与硬件相关。其实在软件上,好的程序设计的方法和正确的参数配置也可以提高程序的性能,有时 在同等情况下只要改变一个参数,程序执行效率就能大大提高。本文就试着在这方面做些探索。
  一.影响性能的因素
ASP程序运行的性能主要决定于以下2个大方面:
1.HTML页面的执行效率
2.反应时间,其中反应时间主要受制于下面要素:
(1).ASP页面的执行效率
(2).数据库因素
下面我们就来详细讨论一下。
  二.详细讨论
1.影响HTML的因素
HTML页面的执行效率是一个纯客户端的问题。影响这个问题的因素主要是客户端的硬件和他的网络带宽。除此之外,还有些下列因素也可以影响HTML页面的执行效率。
(1).图象因素。在HTML的页面尽量避免使用图象。这是因为当浏览器请求一个页面时,如果页面包含N个图象,这将使的浏览器要向WEB服务器请求N次调用。而这种请求会降低页面的加载进程。进而影响速度。
(2).框架问题。在网页里面使用框架同样也会降低页面的加载进程,和图象因素相似,加载一个N个框架也需要请求N次。
(3).表格问题,尽量避免使用表格,尤其是尽量避免使用多重表格,繁杂的表格会影响HTML的执行效率。
(4).去除多余的标记符,让我们来看看下面的例子:


代码如下:

<Body><br>
<P><font face="Verdana" size="4"><br>
</font></P><br>
<P><font face="Verdana" size="4"><br>
</font></P><br>
<P><font face="Verdana" size="4"><br>
</font></P><br>
</Body><br>
你可以去掉 <font>标记符,如下:
<Body><br>
<font face="Verdana" size="4"><br>
<P><br>
</P> <br>
<P> <br>
</P><br>
<P> <br>
</P><br>
<font> </Body><br>

  (5).减少注释,这将会减少文件的大小。进而提高加载速度。
(6).避免使用长文件名,并且在页面里尽量使用相对路径访问其他文件。
(7).在HTML页面里面尽量避免使用Java Applets。例如,如果你想使用Java Applets来处理动画,那么你可以考虑用GIF文件或者是FLASH来代替,而这将比Java Applets快很多。
2.影响ASP的要素
(1).尽量把对象变量转换成本地变量,因为读本地变量比读对象变量要快许多。
比较慢的例子:


代码如下:

if Myobj.Value = 0 then
Do something
elseif Myobj.Value > 0 then
Do something
elseif Myobj.Value < 0 then
Do something
end if

  比较快的例子:


代码如下:

MyVar = Myobj.Value
if MyVar = 0 then
Do something
elseif MyVar > 0 then
Do something
elseif MyVar < 0 then
Do something
end if

(2).如果你使用的是VBScript 5.0或者是更新的版本,尽量使用 With ... End With语句,这也可以提高你的程序运行速度。
比较慢的例子:


代码如下:

Myobj.FirstName = "Srinivasa"
Myobj.LastName = "Sivakumar"
Myobj.City = "Chicago"

  比较快的例子:


代码如下:

With Myobj
.FirstName = "金虎"
.LastName = "马"
.City = "滁州"
End with

  (3).就总体而言,避免使用session变量有助于提高速度,这是因为不同的ASP页面分别在不同的线程里面运行的,而session调用却不是这样的,他是连续的。
3.数据库问题
设计好一个数据库结构可以大大提高程序的运行速度,当然怎么设计数据库结构不是本文讨论的问题。我们先假设已经设计好了数据库结构,看看还能做些什么事情来提高程序的运行速度。
(1).如果你的数据库服务器和WEB服务器是同一个,那么最好分开。这肯定能够提高速度。
(2).如果你访问数据库,最好不要使用动态的SQL语句,使用存储过程或者视图。
(3).有时分配适当的数据库buffers会提高程序的性能。这是因为,假如如果你使用的是Oracle数据库,对于每个连接都需要打开三个sessions。如果你能够处理好这些事情,你将会提高程序的性能。
  总结
其实影响ASP程序执行速度的因素有很多,以上只是一部分。当然上面的一些技巧也不一定适合所有的ASP程序,对待不同的程序要采用不同的策略。最后希望以上的本文能对您有所帮助。

(0)

相关推荐

  • 优化innerHTML操作(提高代码执行效率)

    例子:我们要实现的效果是当用户点击鼠标的时候,就在旧数据上追加若干新数据. 如果使用标准DOM的话,完整代码如下: 复制代码 代码如下: <html> <head> <title>test</title> </head> <body> <div> <p>data<p> </div> <script> document.onmousedown = function() { fo

  • PHP 函数执行效率的小比较

    就是把原来的数组中的数都"拆"成"单"位的. 下面是自己写的一个函数: 复制代码 代码如下: function splitStrToArray_mine($array) { $new_array = array(); foreach($array as $value) { $value = (string)$value; $len = strlen($value); for($i = 0; $i < $len; $i ++){ array_push($new_

  • 查询mysql中执行效率低的sql语句的方法

    一些小技巧1. 如何查出效率低的语句?在MySQL下,在启动参数中设置 --log-slow-queries=[文件名],就可以在指定的日志文件中记录执行时间超过long_query_time(缺省为10秒)的SQL语句.你也可以在启动配置文件中修改long query的时间,如: 复制代码 代码如下: # Set long query time to 8 seconds    long_query_time=8 2. 如何查询某表的索引?可使用SHOW INDEX语句,如: 复制代码 代码如下

  • 根据mysql慢日志监控SQL语句执行效率

    根据mysql慢日志监控SQL语句执行效率 启用MySQL的log-slow-queries(慢查询记录). 在Linux环境下先要找到my.cnf文件(一般在/etc/mysql/),然后可能会发现该文件修改后无法保存,原因是你没有相应的权限,可以从属性中看到该文件的所有者是root,这时要先以root的身份打开它: sudo nautilus /etc/mysql 接着再打开my.cnf文件然后找到[mysqld]标签在下面加上: log-slow-queries=/path/slow.lo

  • i++循环与i-–循环的执行效率(递增与递减效率)

    昨天同事问了我一个问题,有两个循环语句: 复制代码 代码如下: for(i = n; i > 0; i--) { - } for(i = 0; i < n; i++) { - } 为什么前者比后者快? 我当时的解释是: i- -操作本身会影响CPSR(当前程序状态寄存器),CPSR常见的标志有N(结果为负), Z(结果为0),C(有进位),O(有溢出).i > 0,可以直接通过Z标志判断出来. i++操作也会影响CPSR(当前程序状态寄存器),但只影响O(有溢出)标志,这对于i <

  • 分享50个提高PHP执行效率的技巧

    1.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的"函数"(译注:PHP手册中说echo是语言结构,不是真正的函数,故 把函数加上了双引号). 2.如果能将类的方法定义成static,就尽量定义成static,它的速度会提升将近4倍. 3.$row['id'] 的速度是$row[id]的7倍. 4.echo 比 print 快,并且使用echo的多重参数(译注:

  • JavaScript执行效率与性能提升方案

    如何提升JavaScript执行效率与性能在前端开发中位于一个很重要的地方,这节来研究下如何在平时做项目过程中,提升JavaScript性能与运行效率. 循环 循环是很常用的一个控制结构,大部分东西要依靠它来完成,在JavaScript中,我们可以使用for(;;),while(),for(in)三种循环,事实上,这三种循环中for(in)的效率极差,因为他需要查询散列键,只要可以就应该尽量少用.for(;;)和while循环的性能应该说基本(平时使用时)等价. 而事实上,如何使用这两个循环,则

  • Oracle提高sql执行效率的心得建议

    复制代码 代码如下: -->FROM子句中包含多个表的情况下,选择记录条数最少的表作为基础表 -->解析WHERE子句是自下而上的 过滤条件要有顺序 -->ORACLE会将'*'转换成列名 -->DELETE会在rollback segment中存放可恢复信息,可以试试TRUNCATE -->COMMIT会释放:1.rollback segment 2.被程序语句获得的锁 3.redo log buffer -->把Alias前缀于每个Column上可以减少解析的时间

  • 提高ASP页面执行效率的方法分析

    这些大都是与硬件相关.其实在软件上,好的程序设计的方法和正确的参数配置也可以提高程序的性能,有时 在同等情况下只要改变一个参数,程序执行效率就能大大提高.本文就试着在这方面做些探索. 一.影响性能的因素 ASP程序运行的性能主要决定于以下2个大方面: 1.HTML页面的执行效率 2.反应时间,其中反应时间主要受制于下面要素: (1).ASP页面的执行效率 (2).数据库因素 下面我们就来详细讨论一下. 二.详细讨论 1.影响HTML的因素 HTML页面的执行效率是一个纯客户端的问题.影响这个问题

  • 巧用jQuery选择器提高写表单效率的方法

    相信很多小伙伴都会遇到需要做表单的需求,就像我现在做的医院项目,茫茫多的表单无穷无尽.一开始做表单使用最笨的方法:一个个span去定义ID,每个数据都用ajax获取后赋值显示,然后在表单提交前一个个用jQuery根据ID获取元素的value,组成一个model来提交给服务器. 后来发现使用jQuery可以大大简化这个过程.于是我修改了工作方法,总结了我的一些提高写表单效率的方法. 需求 表单中存在最多的无非就是文本.文本框.单选框.多选框.而一些表单中会有几十个甚至几百个选项.我们的目标就是以最

  • 30个提高Web程序执行效率的好经验分享

    尽量避免使用DOM.当需要反复使用DOM时,先把对DOM的引用存到JavaScript本地变量里再使用.使用设置innerHTML的方法来替换document.createElement/appendChild()方 法. eval()有问题,new Fuction()构造函数也是,尽量避免使用它们. 拒绝使用with语句. 它会导致当你引用这个变量时去额外的搜索这样的一个命名空间,with里的代码在编译时期是完全未知的. 使用for()循环替代for-in循 环.因为for-in循环在开始循环

  • asp.net中CSharpThinking扩展方法分析

    本文实例讲述了asp.net中CSharpThinking扩展方法.分享给大家供大家参考.具体分析如下: 一.演变 ① 扩展方法特征 1)必须在一个静态方法中. 2)至少有一个参数. 3)第一个参数必须附加this关键字作为前缀. 4)第一个参数不能有其他任何修饰符(如 out,ref). 5)第一个参数的类型不能是指针. 6) 如果扩展方法名称与类型的方法一样(如都命名为ToString),则只有类型的方法会被调用,而扩展方法的不会,这是一个优先级问题. ② 扩展方法与普通静态方法的比较 C#

  • 微信小程序实现同一页面取值的方法分析

    本文实例讲述了微信小程序实现同一页面取值的方法.分享给大家供大家参考,具体如下: 1.js里单个的值在wxml里取值方法:js里将该值定义为全局变量,在wxml里采用 {{ }}即可获取. 实例: js里得值: data{ schoolName:"清华大学" } wxml里获取: <view class="texts">{{schoolName}}</view> 2.js里数组或是集合在wxml里的取值方法:js里将该集合或数组定义为全局变量

  • TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法分析

    本文实例讲述了TP3.2.3框架使用CKeditor编辑器在页面中上传图片的方法.分享给大家供大家参考,具体如下: 最近项目里要添加编辑器,以为CKeditor比较出名,所以研究了一下... 1.下载编辑器什么的不用说了 2.修改config配置文件 config.image_previewText=' '; config.filebrowserImageUploadUrl = 'uploadFiles'; 添加这两行代码,上面的是去除预览中的一堆没有用的东西,下面的是上传文件的方法名, 注意:

  • JavaScript提高加载和执行效率的方法

    前言 无论当前 JavaScript 代码是内嵌还是在外链文件中,页面的下载和渲染都必须停下来等待脚本执行完成.JavaScript 执行过程耗时越久,浏览器等待响应用户输入的时间就越长.浏览器在下载和执行脚本时出现阻塞的原因在于,脚本可能会改变页面或 JavaScript 的命名空间,它们对后面页面内容造成影响. 一个典型的例子就是在页面中使用document.write() . JavaScript 代码内嵌示例 <html> <head> <title>Sourc

  • 提高SQL的执行效率的ASP的五种做法

    [b]方法一.尽量使用复杂的SQL来代替简单的一堆SQL[/b] 同样的事务,一个复杂的SQL完成的效率高于一堆简单SQL完成的效率,有多个查询时,要善于使用JOIN. oRs=oConn.Execute("Select * FROM Books")  while not ors.Eof      strSQL = "Select * FROM Authors Where AuthorID="&oRs("AuthorID") ors2=o

  • 利用函数的惰性载入提高javascript代码执行效率

    在 javascript 代码中,因为各浏览器之间的行为的差异,我们经常会在函数中包含了大量的 if 语句,以检查浏览器特性,解决不同浏览器的兼容问题. 例如,我们最常见的为 dom 节点添加事件的函数: 复制代码 代码如下: function addEvent (type, element, fun) { if (element.addEventListener) { element.addEventListener(type, fun, false); } else if(element.a

  • 优化javascript的执行效率一些方法总结

    1.在低版本浏览器中(如IE6,IE7等)串联字符串时使用数组的join方法就比使用+号来连接高效很多(如['aaa','bbb','ccc'].join()比'aaa'+'bbb'+'ccc'高效): 2.Array: pop比shift高效,push比unshift高效.这对于设计二叉堆结构比较重要,将最大或者最小的元素放在数组末尾最好. 3.数字取整最好用移位操作: 1.1 >> 0; 4.使用直接量创建Array和Object: var a = []; var o = {}; 5.对象

随机推荐