首页 新闻 论坛 群组 Blog 文档 下载 读书 Tag 网摘 搜索 .NET Java 游戏 视频 人才 外包 培训 数据库 书店 程序员
中国软件网
欢迎您:游客 | 登录 注册 帮助
  • [向saucer提问]如何提高HTML呈现速度 [已结贴,结贴人:purple_tide]
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 10:47:24 楼主
    现在有一个html页面在ie中呈现大概需要1秒钟

    和起点中文网的首页比起来呈现慢了很多 感觉起点中文网首页几乎是没有等待时间就刷出来了

    想请教一下 如何提高页面的呈现速度
    有没有一些小的技巧?


    1.
      经过测试html文件大小差不多,网络下载速度也没有差异
    2.
      可以确定是慢在 下载html完成---到在ie中呈现  这个过程中

    请各位指点一二
    200  修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • sp1234
    • 等级:
    发表于:2008-05-10 10:51:521楼 得分:30
    去查一下你的服务器放在哪个机房里,人家的服务器放在哪个机房里。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • ysn1314
    • 等级:
    发表于:2008-05-10 10:52:472楼 得分:10
    ~前排留名~关注~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 10:56:313楼 得分:0
    引用 1 楼 sp1234 的回复:
    去查一下你的服务器放在哪个机房里,人家的服务器放在哪个机房里。

    不是网络速度问题

    我用代码直接download文件(不呈现)
    两者所需时间差不多

    而且我还可以把我的页面做内网测试......就是html呈现慢...
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • LoveCherry
    • 等级:
    发表于:2008-05-10 10:59:354楼 得分:20
    到底是服务端解析文件慢还是,数据下载慢,还是页面呈现慢?
    如果服务端问题是不是服务器压力过大?页面控件或者页面管道过于复杂?或者数据访问过慢?
    如果是数据下载慢是不是网络线路问题,是不是地域问题,是不是带宽问题
    如果页面呈现慢是不是有太多脚本,页面DOM过于复杂
    先要确定是服务器、网络还是页面本身哪个是主要问题然后再来分析
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:01:185楼 得分:5
    如何提高页面的呈现速度
    --------------------
    1.尽量少用服务期端的控件,页面加载慢
    2.静态页面缓存技术
    3.数据库的优化等
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:04:516楼 得分:0
    引用 4 楼 LoveCherry 的回复:
    到底是服务端解析文件慢还是,数据下载慢,还是页面呈现慢?
    如果服务端问题是不是服务器压力过大?页面控件或者页面管道过于复杂?或者数据访问过慢?
    如果是数据下载慢是不是网络线路问题,是不是地域问题,是不是带宽问题
    如果页面呈现慢是不是有太多脚本,页面DOM过于复杂
    先要确定是服务器、网络还是页面本身哪个是主要问题然后再来分析


    主要是解析文件 ie中呈现慢

    (不是网络问题.因为我用HTTPClient直接下载文件 两者的时间差不多)
    html文件差不多大

    页面上两个页面(我的和起点的..)都有引用 js文件
    不知道有没有专用的html profile 或者javascript profile  就像dottrace一样 可以检查出呈现的时间在什么地方

    很多脚本和html是历史遗留问题 
    我原来想把页面改成符合XHTML 1.1的标准 后来发现代价太大..不得不放弃

    页面上原来嵌套的table元素已经被我清理过了..
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:06:367楼 得分:0
    引用 5 楼 chengqscjh 的回复:
    如何提高页面的呈现速度 
    --------------------
    1.尽量少用服务期端的控件,页面加载慢
    2.静态页面缓存技术
    3.数据库的优化等


    现在已经是比较静态页面的呈现速度了

    当然 和引用的javascript 和css可能也有关系...
    我下一步打算把独立的js文件和css压缩一下...

    或者有没有办法 把一些次要的东西 弄成后面显示

    先把主要内容呈现?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • LoveCherry
    • 等级:
    发表于:2008-05-10 11:19:198楼 得分:20
    你webclient下载的只是html吧
    脚本、css、图片呢?
    比如脚本卡住的话,浏览器就不解析了
    看一下这些元素的下载速度怎么样?
    尽可能把脚本靠后放置,优化页面速度的方法很多
    http://www.cnblogs.com/Truly/category/75432.html 这里
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:20:209楼 得分:0
    引用 8 楼 LoveCherry 的回复:
    你webclient下载的只是html吧
    脚本、css、图片呢?
    比如脚本卡住的话,浏览器就不解析了
    看一下这些元素的下载速度怎么样?
    尽可能把脚本靠后放置,优化页面速度的方法很多
    http://www.cnblogs.com/Truly/category/75432.html 这里


    thanks 我先看看
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:26:5110楼 得分:0
    现在主要的问题是 第一次打开页面很慢  (需要1秒)
    后面还好..不过刷新整个页面的速度还是比不过起点
    我先尝试压缩一下外部文件试试

    另外请教一个问题
    ie下载js和css文件  是同步单线程吗? 还是异步的?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • syc958
    • 等级:
    发表于:2008-05-10 11:30:1211楼 得分:5
    不知道你说的是动态还是静态页!要是动态的,当然方面太多了!控件太多也是慢的一个原因!你可以把大的css拆分开,js也要拆分开,并且要有加载的先后顺序!先加载主要的次要的可以靠后!图片全用gif格式!还有就是不要用大的table,和大的div,因为大的table,div,要全部加载了才会显示!还有你代码的质量!,css有没有减肥!太多了!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:33:5112楼 得分:0
    引用 11 楼 syc958 的回复:
    不知道你说的是动态还是静态页!要是动态的,当然方面太多了!控件太多也是慢的一个原因!你可以把大的css拆分开,js也要拆分开,并且要有加载的先后顺序!先加载主要的次要的可以靠后!图片全用gif格式!还有就是不要用大的table,和大的div,因为大的table,div,要全部加载了才会显示!还有你代码的质量!,css有没有减肥!太多了!


    html 当然是静态页

    大的table已经被我拆分了


    css和js我还没有减肥  正要压缩试试看

    图片好像默认的就是最后加载? 这个
    我把起点首页 和我的页面  整个保存为一个文件夹 也就是包括了所有的image js 所有文件加起来 大小差不多

    估计不是大小的问题
    文件数量方面我比起点多一点 但也不是很多
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:34:2813楼 得分:0
    代码的质量主要指的是?
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • syc958
    • 等级:
    发表于:2008-05-10 11:40:0014楼 得分:5
    如果这些都确定没有事!那就是服务器和网速的问题了应该!这个没办法!韩国游行flash那是因为它们网速平均可达到50m以上,基本上是世界最快的!我们基本上是世界上最慢的!所以,没有让我们网页全用文字就不错了!有钱就换个好点的服务器!要双线的!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:46:0415楼 得分:0
    服务器还好 应该不是网络的问题

    服务器托管在IDC 目前服务器最多可以支持30000万人在线...
    有2台web负载 网通和电信
    有独立数据库服务器和附件服务器
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 11:51:1416楼 得分:0
    该回复于2008-05-10 15:36:25被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 12:01:4817楼 得分:0
    不知道有没有专用的html profile 或者javascript profile  就像dottrace一样 可以检查出呈现的时间主要用在什么地方
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 12:09:1418楼 得分:0
    关注
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 13:09:3019楼 得分:0
    up
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 14:13:5620楼 得分:0
    图片尽量少用,能用gif的就用gif,js,css代码能压缩的尽量压缩,尽可能把脚本靠后放置。静态页面一般变化不大,能启用客户端缓存的就尽量启用。
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 14:20:1221楼 得分:0
    有时候数据的读取量会对呈现产生很大的影响,尤其是图片多的时候。还有就是Sql的优化也有助于提高呈现速度!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 14:22:2522楼 得分:0
    还有把能在客户端使用的js,放在客户端,不要放在服务器端!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 14:23:5623楼 得分:0
    再就是,可以把你要呈现的图片,用PS进行切片处理。这样可以增进图片的下载速度!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • hy_lihuan
    • 等级:
    发表于:2008-05-10 15:07:1924楼 得分:50
    整体来说涉及的方面太多了,纯粹从html优化的角度来说,就是下载页面和css、js文件的时间了,那就看你页面的大小了;
    真正的解析呈现时间肯定是差不多的,缓存也会对你的网站有一定影响的;说实话就从下载来看你的程序是没有可比性的
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:18:2425楼 得分:5
    都是静态页面,估计还是载入外部CSS与JS用的时间长了一点,如果没必要的话,可以把CSS与JS嵌到html中去,这样会快一点。还有图片如果比较大的,最好把它们分割成一小块一小块
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:28:0526楼 得分:0
    该回复于2008-05-10 15:36:24被版主删除
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:33:4627楼 得分:0
    引用 18 楼 job_2006 的回复:
    关注

              公司:江西世纪网络科技有限公司
    网址:www.21it.com
    电话:0791-6810858 15970620547  林坤
    Q Q:757718134  80236657
    邮箱:bc@21it.com
    地址:南昌市南京东路165号东方广场A1-2座1104室
    -----------------------------------
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 15:42:1828楼 得分:0
    关注中,不过这和网页内容,CSS,JS,图片有关,还有就是取数据库有关
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:02:5129楼 得分:0
    可以使用ajax的提交节流的模式,就是把基础框架展现出来,其他的内容可以在用户在页面停留尝过3秒以后进行加载.
    对于不是即时使用的js文件,可以放在html标记最下边导入.这样就不会在下载js文件是耽误整个页面框架的显示.
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:02:5430楼 得分:0
    mark 一下
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:20:5631楼 得分:0
    收藏 顺便顶下
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:24:5632楼 得分:0
    靠 这个真是一个难解的问题 关注一下 我顶
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    • Sandy945
    • 等级:
    发表于:2008-05-10 16:30:5133楼 得分:0
    关注~
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:32:5734楼 得分:0
    感受无知,要学的东东还真多啊!!!
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天
    发表于:2008-05-10 16:42:4535楼 得分:0
    学习
    修改 删除 举报 引用 回复
    进入用户个人空间
    加为好友
    发送私信
    在线聊天