对很多开发者而言,如果网站的日流量达到百万级别,峰值 PV 也突破了 3 万,这样的站点在线下测试的时候总是让人心力交瘁。。。。

生产环境下的性能监测问题更是尤其让人头疼!

开发同学在想,运维人员也在想;男人在想,女人也在想。现在,值得男女老少一齐关注的问题,恐怕也只有「雾霾」了。众所周知,3M 口罩完美解决了「雾霾」所带来的一系列安全性能问题。那么,在前端性能监控领域,有没有为专为网站打造的「3M」产品呢?

人人都想要「高性能」,可你明白什么是高性能网站吗?

什么叫高性能的网站?

现有两个网站性能架构设计方案:方案 A 和方案 B。方案 A 在小于100个并发用户访问时,每个请求的响应时间是1秒,当并发请求达到200的时候,请求的响应时间将骤增到10秒。方案 B 不管是100个还是200个并发访问,每个请求的响应时间都差不多是1.5秒。

哪个方案的性能好?

如果你的老板要求 「我们要改善一下网站的性能」你知道他指的是什么吗?

同类型的两个网站,X 网站服务器平均每个请求的处理时间是500毫秒,Y 网站服务器平均每个请求的处理时间是1000毫秒,为什么用户却反映 Y 网站的速度快呢?

网站性能是客观的技术,可以具体反映在响应时间、吞吐量等指标中;同时也是主观的感受,而感受则是一种与具体参与者相关的微妙的东西,用户的感受和工程师的感受不同,不同的用户感受也不同。

不同视角下的网站性能

软件工程师所说的网站性能和用户说的是不一样的!!!

1.用户视角下的网站性能

从用户角度讲,网站性能就是用户在浏览器上的直观感受:网站是快还是慢?

用户感受到的时间,包括用户计算机和网站服务器通信的时间、网站服务器处理的时间、用户计算机浏览器构造请求解析响应数据的时间,如下图所示。

计算机性能有差异,浏览器解析 HTML 速度有差异,网络运营商提供的互联网宽带服务有差异,这些差异最终导致用户感受到的响应延迟可能会远远大于网站服务器处理请求需要的时间。

在实践中,使用一些前端架构优化手段,通过优化页面 HTML 式样、利用浏览器端的并发和异步特性、调整浏览器缓存策略、使用 CDN 服务、反向代理等手段,使浏览器尽快地显示用户感兴趣的内容、尽可能近地获取页面内容,即使不优化应用程序和架构,也可以很大程度地改善用户视角下的网站性能。

2.开发人员视角下的网站性能

开发人员关注的主要是应用程序本身及其相关子系统的性能,包括响应延迟、系统吞吐量、并发处理能力、系统稳定性等技术指标。主要的优化手段有:使用缓存加速数据读取,使用集群提高吞吐能力,使用异步消息加快请求响应及实现削峰,使用代码优化手段改善程序性能。

3.运维人员视角的网站性能

说的再多最后都要上生产环境,所以,最直接、最真实 的就是把用户访问时的各项指标作为最终的判断依据。

上生产之后,就该运维人员来发愁了。

运维人员更关注基础设施性能和资源利用率,如网络运营商的带宽能力、服务器硬件的配置、数据中心网络架构、服务器和网络带宽的资源利用率等。主要优化手段有建设优化骨干网、使用高性价比定制服务器、利用虚拟化技术优化资源利用等。

现阶段,大多数的前端工具都比较碎片化,例如 yslow 偏重页面静态分析,fildder 主要做页面请求分析,而且,他们还缺少「统计功能」,也就是所谓的「一次性软件」

现在,Browser Insight 提供了统一的视图,全面涵盖了用户视角、开发视角以及运维视角。就像 3M 口罩一样,针对不同的用户群,都能提供满足他们需求的产品,让开发者同学不再纠结。

下面是 Bi 的几个功能板块,基本上涵盖了从研发、测试再到运维 3 位一体的层面。



为什么说 Browser Insight 像「3M口罩」?

  • Browser Insight 可以和百万访客「直接」接触,不用担心影响用户;
  • Browser Insight 安装后,服务器和应用程序毫无压力,不用担心带宽、CPU、内存等消耗;
  • Browser Insight 全量数据,实时分析,不会泄露任何信息,安全自信的做性能监测;
  • Browser Insight 以用户为中心的统计分析,分分钟定位网站性能瓶颈,让网站问题如「雾霾」一样,不再干扰你的心情;

目前,OneAPM 针对前端性能的优化产品,也就是号称网站「3M 口罩」的 Browser Insight 已经免费提供给大家使用了。同时包括针对应用服务器性能优化 Application Insight 产品以及针对存储服务器性能优化 Cloud Insight 产品也都提供了免费版产品,希望能够帮助开发者不断优化网站,真正意义上构建一个「高性能」的网站!!!

日均百万 PV 的站点如何做性能监测?试试「3M口罩」!的更多相关文章

  1. 构建日均千万PV Web站点1

    如何构建日均千万PV Web站点 (一) 其实大多数互联网网站起初的网站架构都是(Linux+Apache+MySQL+PHP). 不过随着时代的发展,科技的进步.互联网进入寻常百姓家的生活.所谓的用 ...

  2. 如何构建日均千万PV Web站点 (一)

    其实大多数互联网网站起初的网站架构都是(Linux+Apache+MySQL+PHP). 不过随着时代的发展,科技的进步.互联网进入寻常百姓家的生活.所谓的用户的需求,铸就了一个个互联网大牛: htt ...

  3. 如何构建日均千万PV Web站点 (三) Sharding

    其实国内许多大型网站为了应对日益复杂的业务场景,通过使用分而治之的手段将整个网站业务分成不同的产品线,比如说国内那些大型购物交易网站它们都将自己的网站首页.商铺.订单.买家.卖家等拆分不同的产品线,分 ...

  4. 如何构建日均千万PV Web站点(二) 之~缓存为王~

    随着网站业务的不断发展,用户的规模越来越大:介于中国无比蹩脚复杂的网路环境:南电信:北联通:中间竟然只用一条链路进行互联通信!有研究表明,网站访问延迟和用户流失率正相关,网站访问速度越慢,用户越容易失 ...

  5. 如何构建日均千万PV Web站点

    http://www.cnblogs.com/xiaocen/p/3723839.html http://www.cnblogs.com/xiaocen/p/3726763.html http://w ...

  6. Android 性能优化(2)性能工具之「Hierarchy Viewer 」Optimizing Your UI:分析哪个view有性能问题,查看屏幕上某像素点的坐标,颜色等

    Optimizing Your UI In this document Using Hierarchy Viewer Running Hierarchy Viewer and choosing a w ...

  7. Android 性能优化(24)*性能工具之「Traceview,dmtracedump」Profiling with Traceview and dmtracedump :记录并查看函数调用栈*

    Profiling with Traceview and dmtracedump In this document Traceview Layout         Traceview工具界面介绍 T ...

  8. Android 性能优化(22)*性能工具之「Hierarchy Viewer」 Hierarchy Viewer Walkthrough

    Hierarchy Viewer Walkthrough 1.In this document Prerequisites Setting the ANDROID_HVPROTO variable W ...

  9. [转]iOS hybrid App 的实现原理及性能监测

    转自:http://www.cocoachina.com/ios/20151118/14270.html iOS hybrid App 的实现原理及性能监测 2015-11-18 11:39 编辑:  ...

随机推荐

  1. 关于sharepoint 2010无法显示用户中文名的解决方法和详细剖析

    相信这个问题许多做sharepoint的朋友都曾经遇到过,就是本来很正常的中文用户名莫名其妙的变成了“域名\账号”,我本人也遇到过好多次,每次都是百度谷歌一下草草解决问题,始终也没真正去弄明白是怎么回 ...

  2. css3过度和动画

    一.过度(transition) transition:[transition-property] || [transition-duration] || [transition-timing-fun ...

  3. 【转】PL/SQL编辑数据"这些查询结果不可更新,请包括ROWID或使用SELECT...FOR UPDATE获得可更新结果"处理

    [转]PL/SQL编辑数据"这些查询结果不可更新,请包括ROWID或使用SELECT...FOR UPDATE获得可更新结果"处理 只要有人用了: select t.* from ...

  4. ASP实现随机提取数据库记录例

    <% "一个从数据库中随机读取纪录的例子 Set Rs1=server.CreateObject ("adodb.recordset") Set Rs=server ...

  5. Fluent Validation For .NET

    //.net 中数据验证,一个开源的项目,直接下载 1 using FluentValidation; public class CustomerValidator: AbstractValidato ...

  6. 经历:easyui的layout自适应高度布局

    在使用easyui的layout布局的时候,在某种情况下,我们会在后续的逻辑中修改一下layout的某个region的高度,那么该怎么做呢?  我就遇到了这样的情况,今天需求经理提出了一个需求:认证用 ...

  7. OC2_分数类

    // // Fraction.h // OC2_分数类 // // Created by zhangxueming on 15/6/10. // Copyright (c) 2015年 zhangxu ...

  8. java新手笔记24 Math/String对象

    1.Math package com.yfs.javase; public class MathDemo { public static void main(String[] args) { int ...

  9. 文本框限制输入类型<input>的输入框

    最近在开发完一个项目后,又测试人员测试bug,然后我根据他们测试出来的bug一个一个的改,然后就遇到了一个问题,文本框是用来搜索,但是,比如这个文本框是用来搜索年龄的区间,输入条件的时候,如果输入了非 ...

  10. strcpy(),string使用问题

    两个CString,把一个赋值给另外一个,用strncpy出现问题,直接=赋值正确了,不知道为什么?