【网站性能指南】(一)概述

news/2024/5/11 17:53:25/文章来源:https://blog.csdn.net/byrsongQQ/article/details/7917470

【概观】

  • 什么使我们的网站变慢?
  • Http 协议
  • 通过更好的性能省钱和赚钱
  • 性能规则

【什么使网站变慢】

  • 对于大多数现代的网站,仅仅有10%-20%的响应时间是用于生成和加载html document的。

        那么,其他的时间用于加载什么呢?确切的说,如下:

  1. css
  2. javascript(jquery,plugin 等等)
  3. images

    让我们使用一个工具去看看-Fiddler (http://www.fiddler2.com/fiddler2/)

    首先打开fiddler,然后使用浏览器访问 www.microsoft.com

    这时候我们可以看到fiddler监控到客户端与微软网站服务器之间的交互情况如下图:

 

注意fiddler 右边的选项卡,有一个timeline。载入default.asp话费了大概1s的时间。让我们全选这些行。再去看看timeline,如下图

 

这时候我们根据数据就可以证明前边的观点,对于某个网站来说,80%的时间是用于加载css/JS/image的。

 

【Http 协议】

对于http协议的理解是非常重要的,因为它定义了web 浏览器和 web 服务器如何交互。

  • Hypertext Transfer Protocol

       对于这点来说,最重要的是text,它不是基于二进制的协议,而是基于text的。

  • 协议是1997年1月在 RFC(Http1.1)定义的。
  • 请求/相应 模式。客户端浏览器发送特定的request,服务器返回response
  • Header 和body。 每个request/response 有header和body

以下是 http协议的内容。我十分推荐你们阅读它:http://tinyurl.com/8395lq

 

HttpRequest

我们使用fiddler观察一下我们访问微软的httprequest。

选中第一个记录。右边选项卡依次->Inspecotrs->Raw

我们简单分析,

Get指明了url和http的版本。

host指明了host的地址。

accept-language指明了浏览器使用的语言

accept-Encoding指明了是否可以使用对浏览器到服务器之间的数据进行压缩。

 

HttpResponse

下面我们来看看刚才我们请求的响应。

我在fiddler中选中的是第12行数据,选中右边选项卡->Inspecotrs->Raw

#ResultProtocolHostURLBodyCachingContent-TypeProcessCommentsCustom
12200HTTPwww.microsoft.com/en-us/homepage/shared/core/2/js/js.ashx?&3privatetext/javascript; charset=utf-8chrome:3856  

 

Http/1/1 200 OK。是告诉大家,一切运行良好。 200是一种状态,如果遇到问题可能会是404,500等。
其他细节,大家可以自己查一下资料。

【通过更好的性能省钱和赚钱】

大家都可以明白。提升网站的性能,可以让用户更加满意。而这也能让我们省钱和赚钱。

  • 省钱的办法:

使用更小的带宽

更少的服务器数量

  • 赚钱的办法:

增长的销售和流量

    • -每增加100毫秒载入Amzon.com 会减少销售额的1%.web
    • -当google maps 的主页大小从100KB减少到70-80k时,流量在第一周会增在10%,在随后的3周会增长到25%。
    • -google 已经根据你网站的性能去帮助决定搜索排名。

对于网站性能对流量和销售产生的影响请参见相关文章《web性能心理学》http://www.websiteoptimization.com/speed/tweak/psychology-web-performance/

 

【性能规则】

  1. 减少http request

如何减少http request呢?我们根据上边提到fiddler侦听到的http request 得知,好多次请求是去获取css,javascript,和image的。

首先我们先来看看一个网站:

它是一个普通的网站他可以使用jquery来弹出图片,我们用fiddler 来试试它。

我们可以看出。他包含了一些css文件,也使用了jquery。

让我们看看这个网站的另一个版本。

样子是一模一样的,我就不show图了。

让我们看看fiddler 又帮我们抓到了什么:

js和css文件都变成1个了。我们把上边的js文件合并成1个js文件。这样我们就减少了httprequest的次数。

 

2.发送尽可能少的数据

我们回到fiddler。查看第一个网站的jquery文件“jquery-1.6.2.js。

它的普通版本是236k。

 

第一个网站需要加载js的总大小是279k。

而第二个网站需要加载js的大小是50.8k。

我们做了什么呢?只是把js文件里的白空格去掉了,就是对js文件的压缩。

css文件也如此。在最后的product版本上,我们使用合并的文件可以减少httprequest次数。当然在debug的时候我们要保留空行增加代码的可读性。

关于压缩js的工具我们在网上可以找到很多,就不列举。

3.减少交互的次数(适当使用缓存)

让我们刷新一下第二个网站,并观看fiddler。我们可以发现,第二次加载至向服务器获取了default.aspx。

并没有重新加载js、css和图片。因为浏览器已经替我们缓存了那些文件。

 

后续的章节是

【性能测量】

【基础实施性能】

【前段性能】

【五花八门的性能】

敬请关注


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_880091.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

【网站性能指南】(二)网站性能测量神器

上一章我讲了很多关于Fiddler的东西。其实有很多检测工具可以使用,如 Fiddler 、chrome、firebug、Network Monitor、IIS 和一些第三方的service。 首先我们还是先继续回顾一下fiddler的功能 【fiddler】 追踪工具,尤其针对Http 展示完成的request和re…

【网站性能指南】(三)奠基石-基础建设

【概述】 在这一章节,我们的主题聚焦在基础设施建设上。 Http Compression(压缩)Content Expirations (内容过期)Content Distribution Networks - CDN(内容分发网络)Etags (E标签)去掉没必要的Http head…

【网站性能指南】(四)前端性能-压爆你的文件

【概述】 在这一章,我们会聚焦在前端性能: 外部的Css 和 JavascriptCss 和 Javascript 的 迷你化 与 合并图片的最佳化Css 图片拼合器 【外部的CSS和Javascript】 几乎所有的CSS和Javascript 都应该放在外部文件 减少页面的尺寸允许重用允许使其过期 可读性更高 …

unity使用mixamo网站所有动作

//如果模型已经绑定了骨骼可以直接导入网站 //如果会C4D需要看下IMAX插件如何使用的(B站有)---非常简单,基本就是点点点就好了,真的不难(插件可以在魔顿网免费下载)。

Texture贴图材质资源网站分享

话不多说直接贴: https://www.textures.com/libraryhttps://www.textures.com/library进入之后可以选择 搜索查找你要的东西,只能英文 免费下载,低清晰度的,512X512,学习使用完全足够 说明:如需商用请购…

大型网站后台架构的Web Server与缓存 (转)

1.1 Web server Web server 用来解析HTTP协议。当web服务器接收到一个HTTP请求时,会返回一个HTTP响应,例如送回一个HTML页面。为了处理一个请求,web服务器可以响应一个静态页面或者图片。进行页面跳转,或者把动态响应的产生委托给…

Java批量检测网站链接是否正常,并生成检测日志文档

Java批量检测网站链接是否正常,并生成检测日志文档 1.Java代码块 (生成检测日志文档文档为md格式,最好下载typora或markdown进行查看,也可根据自己所需改成txt文档) 文件名:ceshi.java import java.io.B…

加上快捷键,让你的网站酷起来

伟大的程序员都懒。 这话是我从《PHP 与 MySQL 程序设计》中看来的,来自于 Larry Wall 的一句话: Most of you are familiar with the virtues of a programmer. There are three, of course: laziness, impatience, and hubris. 懒的程序员的特征是&…

使用GitLab Pages托管静态网站

文章目录 前言一、GitLab Pages是什么?二、使用步骤1.开通账号,创建Git仓库同步项目2.添加.gitlab-ci.yml文件,开启GitLab Pages3.部署成功之后访问项目 总结 前言 在我们日常的程序员养成过程中,会产生一些产物,自己…

在12306网站上如何可以选择上中下铺

众所周知,在12306官方购票时无法自己选择上中下铺的,那么如何在12306上买到上中下铺呢,相信大家都会感兴趣,这是一个利用12306的一个web代码来实现的,然后结浏览器的web调式功能,如果你是一个web美工&#…

pc网站qq互联登录授权php版

首先看下工具类 <?php /*** QQ互联pc网页授权类*/ namespace App\Lib\QQconnect;use App\Lib\Util\Curl;class QQconnect{const err [0 >成功,100000 > 缺少参数response_type或response_type非法,100001 > 缺少参数client_id,100002 > 缺少参数client…

虚拟机内的homestead环境下的网站项目让局域网内的同事访问

# 登录进虚拟机 $ vagrant ssh # 共享本地域名 $ share apitest.cn如图红框圈住的地址就可以访问了&#xff0c;6666

怎样在织梦dedecms网站上添加漂浮广告

在织梦 dedecms的网站上添加漂浮广告其实很简单&#xff0c;这篇文章主要讲的是在织梦网站首页添加漂浮广告。 我们用本地搭建的织梦默认模板演示。 1、准备一个广告图片 准备一个广告图片&#xff0c;命名为漂浮.gif &#xff0c;设置好图片大小150*150 &#xff0c;之后把图片…

dedecms教程:多款精美分页网站模板pagelist样式

使用dedecms&#xff0c;有时需要自定义分页样式。怎么办呢&#xff1f; 不急&#xff0c;20几款精美分页样式&#xff0c;总有一款你最喜欢。使用很简单&#xff1a; 步骤&#xff1a;三步即可解决 多款精美dede分页样式.zip 1、直接覆盖include/arc.listview.class页 2、把演…

dedecms教程:网站模板自定义表单制作在线订单详细解说

一步首先你要知道自定义表单的后台界面在哪里截图 第二步添加自定义表单 我选择完全公开就是说访客提交的时候他们也是可以看到我们的自定义信息的 数据表 模板根据你的模板自定义即可 我们先look下 下面就是自定义的内容了 我随便举例给大家演示下 首先返回界面 点击红圈来添加…

dedecms教程:织梦做中英文(多语言)网站详解

对于多语言网站&#xff0c;可能许多人都想进行制作&#xff0c;可又不明白其中的道理&#xff1b;因为多语言网站不仅仅只是一个网站站点&#xff0c;具有多个而且是不同语言&#xff1b;它也不是站群&#xff0c;就是一个网站的一部分&#xff01; 首先实现多语言站点提供两种…

[原创]DEDE 织梦建站,仿站(包含5套正版建站软件)

教程包括&#xff1a; 3、dedecms仿站进门教程 本教程适用于&#xff1a; 网易博客安全提醒&#xff1a;系统检测到您当前密码的安全性较低&#xff0c;为了您的账号安全&#xff0c;建议您适时修改密码 立即修改 | 封闭 5、dedecms综合学习资料汇编&#xff1b; 重要提醒&…

简单解释网站是如何进行访问的

今天学习的时候看到一个值得记录的面试题&#xff1a; 一个网站是如何进行访问的 首先输入网址域名&#xff0c;回车&#xff1a; 1.检查本机的C:\Windows\System32\drivers\etc\hosts配置文件里有没有这个网址的域名映射 如果有&#xff0c;则直接返回对应的ip地址&#xf…

Javaweb Listener监听器的简单应用:统计网站在线人数

Listener监听器实现统计网站在线人数 开发环境&#xff1a; IntelliJ IDEA 一、什么是监听器 是指专门用于对其他对象身上发生的事件或状态改变进行监听和相应处理的对象&#xff0c;当被监视的对象发生变化时&#xff0c;立即采取相应的行动。 具体参考下文&#xff1a; J…

SEOER都在为网站的“流量增长优化”而迷茫

SEO优化不得不说现在做SEO的工作是非常困难的&#xff0c;而在这个行业里从业多年的SEO经理们&#xff0c;不仅仅要扛着很大的压力、还要面对下属对自己传经授教的一些期盼&#xff0c;对外更不知道搜索引擎&#xff0c;特别是百度又要干什么来剥削你的流量了&#xff01; 但其…