加速ASP程序的显示速度

加速ASP程序的显示速度
(作者:Huoju 2001年01月02日 10:34)

  作为一个ASP程序员,你不会怀疑提高Web应用程序性能的重要性。为了让程序运行的更快一些,你可能一直忙于优化数据库或COM组件。如果这些你都做过了,你想到过靠加快最终生成HTML代码在浏览器中的显示速度来提高性能吗?对于最终用户来说,如果页面能显示的更快,你就能赢得更多的赞誉。
  提高HTML在浏览器中显示的速度可以通过一些鲜为人知的技术来实现。

  1 使用表格嵌套?
  
  (图一)
  在页面中建立复杂的结构,一般通过在页面中放置HTML表格来实现。如果要建立一个这样的页面:这个页面有一个顶部导航栏一个左边导航栏,一个右边的内容区。可以用一个两行两列的大表格来建立它。第一行中,合并两个列,然后插入一个顶部导航栏。第二行左边的列中,插入一个表格来显示导航按钮。右边的栏中,放置一个表格来实际内容。(见图一)这样嵌套的表格生成的代码是这样的:

  <TABLE BORDER="0">
  <TR>
  <TD COLSPAN="2"><!-- content for top nav bar --></TD>
  </TR>
  <TR>
  <TD ALIGN="LEFT" VALIGN="TOP"><!-- content for left nav bar --></TD>
  <TD ALIGN="LEFT" VALIGN="TOP"><!-- content for body of page --></TD>
  </TR>
  </TABLE>

  但是,实际上,浏览器找到<TABLE>标签的时候并不是立刻把页面显示到屏幕上,除非它找到相应的结束标签</TABLE>。所以,如果你的整个页面在一个表格里的话,在收到最后一个</TABLE>之前,什么也不会显示出来,这样,这个页面将在整个文件全部下载以后才能被用户所看到。在页面数据量比较大的时候(比如搜索引擎的搜索结果),这个特性会导致暂时的停顿。为了防止出现这种情况,可以在制作的时候把页面分成许多小的表格。在每一个<TABLE>到相应的</TABLE>这一部分HTML代码下载完的时候,浏览器就会把它显示出来。在访问者看来页面是渐渐的,一部分一部分,越来越多的出现在屏幕上的。感觉上,这样的页面显示速度比下载完整个文件再一次显示出来更快。
  
  (图二)
  按照这个原则来研究前面的例子,应该把页面中整个的大表分成三个单独的表。用第一个表显示顶部的导航栏,调节它的宽度,使它足够容纳所有的内容,在一个<TABLE></TABLE>代码段中完成它。页面下半部分,左边第二个表排成一列。使用第三个表容纳实际内容。(见图二)因为每一个部分都是一个完整的表格,所以,每一部分代码下载后都会立刻被显示出来。这样,顶部和左边的导航栏将比页面的其它部分更显显示出来。用户会在这个时候想象页面开始下载,很快就能显示在屏幕上。这样比起让用户在较长时间内一直面对一个空白屏幕要好得多。

  修改过的代码是这样的:
  <TABLE BORDER="0" WIDTH="100%">
  <TR>
  <TD ALIGN="CENTER" VALIGN="TOP"><!-- content for top nav bar --></TD>
  </TR>
  </TABLE>
  <TABLE BORDER="0" ALIGN="LEFT">
  <TR>
  <TD ALIGN="LEFT" VALIGN="TOP"><!-- content for left nav bar --></TD>
  </TR>
  </TABLE>
  <TABLE BORDER="0">
  <TR>
  <TD ALIGN="LEFT" VALIGN="TOP"><!-- content for page body --></TD>
  </TR>
  </TABLE>
  2 也要记住关闭其他的标记
  在上面的例子中,我们仅仅早一些关闭<TABLE>标记,就能让页面在浏览器显示的更快些。以此类推,还有一些类似的标记也有同样的特性。
  比如产生列表框和组合框<OPTION>标记和产生列表项的<LI>标记。通常,ASP程序员存取数据库,并把数据送入通过<OPTION>建立的列表框或组合框中,这时候在代码中写上一个关闭<OPTION>标记,这样简单的改变也能使页面在浏览器中显示的更快。

  不要使用这样的代码:
  Do while not objRS.EOF
  strOptionList = strOptionList & "<OPTION VALUE=""" & objRS("ID") &_""">"& _objRS("ProductName")
 objRS.MoveNext
  Loop

  Response.Write "<SELECT SIZE=""1"">" & strOptionList & "</SELECT>"

  要使用这样的代码:
  Do while not objRS.EOF
  strOptionList = strOptionList & "<OPTION VALUE=""" & objRS("ID") & _ """>" & objRS("ProductName") & "</OPTION>"
  objRS.MoveNext
  Loop

  Response.Write "<SELECT SIZE=""1"">" & strOptionList & "</SELECT>"

  不要使用这样的代码:
  <UL>
  <LI>Apples
  <LI>Oranges
  <LI>Bananas
  </UL>

  使用这样的代码:
  <UL>
  <LI>Apples</LI>
  <LI>Oranges</LI>
  <LI>Bananas</LI>
  </UL>

  现在看看,你的页面在浏览器中是不是显示的快了?
  请不要轻视这些改变对提高ASP程序性能的重要性。也许,在你能找到的“技巧与提示”一类的书或在线资料中,很少提到过通过优化HTML代码来使你的程序运行的更快。但是,在实际中应用这些技术,确实能使程序性能得到很大的提高。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
管理员:admin密码:admin 安装说明------------------------------------- 使用解压缩软件解开压缩包,保持文件的相对位置,上传到你的服务器上,论坛基本上就可以使用了, 但你还应该做一些设置以适合你的需要,比如更改论坛的默认名称“YxBBsv3.0”,以及添加论坛版面等。 本论坛采用asp+access2003开发,因此,要求服务器为WIN2000+IIS5++ADO2.5+IE5.5或以上版本,方能保证 本论坛高效,稳定的运行。 论坛安全------------------------------------- 请打开INC下的Conn.Asp,修改数据库路径,以免造成数据泄露,本论坛使用前后台分离技术 既:您可以不上传后台管理目录(Admin),或者将其改为其他的名字,注意如果修改为其它的名字, 需要登陆后台更改基本设置. 另:论坛使用缓存技术,所以某些设置需要到后台更新了缓存才能显示. 程序特点 速度方面:采用目前较为流行的缓存技术,这样大大加速了论坛的访问速度 功能方面:虽然我们的功能不能和动网相比,但是我们以实际为基础,功能绝对够一般论坛的需求 适用方面:本论坛使用操作简单方便,更适合那些没有多少经验的论坛新人使用 体积方面:本论坛大小只有387K,而且包括了2个插件,更适合小空间,上传时间也会大大减少 更多的惊喜只有在您的使用中才能体会,最后祝福您使用愉快. 更新说明 1.修改了注册的验证提示,加入了ajax进行用户名验证. 2.修改帖子列表前方图标可以在新窗口打开帖子 3.增加副标题功能 4.优化操作错误页面,增加返回上一页. 5.完善发公告不方便 6.帖子评分 7.搜索支持多关键字,并高亮显示 8.增加识别对GoogleChrome的识别 9.增加对标题的过滤 10.增加对上传头像的清理功能 11.帖子列表显示字数的后台可控制 12.调整分页显示样式 13.增加收藏功能(不过是收藏到了QQ的书签里) 14.修正移动帖子首页最后发表不更新的问题 15.修正因为用户金钱过多而不能查看帖子的BUG 16.增加帖子举报功能. 17.修正FLASH遮盖管理菜单问题 18.调整上传附件后台可查看相关帖子 19.优化SEO,后台可设置站点描述和关键字 20.调整后台登陆错误提示 21.修正群发E-mail出现内容重复的问题
管理员:admin密码:admin 安装说明: 使用解压缩软件解开压缩包,保持文件的相对位置,上传到你的服务器上,论坛基本上就可以使用了, 但你还应该做一些设置以适合你的需要,比如更改论坛的默认名称“YxBBsv2.2”,以及添加论坛版面等。 本论坛采用asp+access2000开发,因此,要求服务器为WIN2000+IIS5++ADO2.5+IE5.5或以上版本,方能保证 本论坛高效,稳定的运行。 论坛安全: 请打开INC和ADMIN下的Conn.Asp,修改数据库路径,以免造成数据泄露,本论坛使用前后台分离技术 既:您可以不上传后台管理目录(Admin),或者将其改为其他的名字,注意如果修改为其它的名字, 需要登陆后台更改基本设置. 另:论坛使用缓存技术,所以某些设置需要到后台更新了缓存才能显示. 程序特点: 首先,欢迎您使用YxBBs. 速度方面:采用目前较为流行的缓存技术,这样大大加速了论坛的访问速度 功能方面:虽然我们的功能不能和动网相比,但是我们以实际为基础,功能绝对够一般论坛的需求 适用方面:本论坛使用操作简单方便,更适合那些没有多少经验的论坛新人使用 体积方面:本论坛大小只有400K,而且包括了2个插件,更适合小空间,上传时间也会大大减少 更多的惊喜只有在您的使用中才能体会,最后祝福您使用愉快. 有问题请到本站论坛http://www.YimXu.com

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

蝈蝈俊

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值