大连仟亿科技
客服中心
  • 电话
  • 电话咨询:0411-39943997
  • 手机
  • 手机咨询:15840979770
    手机咨询:13889672791
网络营销 >更多
您现在的位置:仟亿科技 > 新闻中心 > 常见问题

网站性能问题与调优方法

作者:billionnet 发布于:2012/12/10 17:37:49 点击量:

系统性分析网站有关系统性能条件、性能瓶颈问题定义与定位,以及性能调优方法经验。 比如

  • 由12306.cn谈谈网站性能技术
  • 代码优化概要

网站“要进行优化,先得找到性能瓶颈!”。为了对于网站性能瓶颈有一致的认识,小编对系统性能的条件做了简单描述:

  1. Throughput ,吞吐量。也就是每秒钟可以处理的请求数,任务数。
  2. Latency, 系统延迟。也就是系统在处理一个请求或一个任务时的延迟。

这两个条件相互约束,他们的关系如陈皓所分享的:

  1. Throughput越大,Latency会越差。因为请求量过大,系统太繁忙,所以响应速度自然会低。
  2. Latency越好,能支持的Throughput就会越高。因为Latency短说明处理速度快,于是就可以处理很多的请求。

陈皓对系统性能问题进行系统性介绍,分析了性能瓶颈的定义与定位,并分享了他的一些调优经验,文章主要从以下几个方面展开:

  • 系统性能测试的过程;
  • 定位系统性能瓶颈的方法;
  • 常见的系统性能调优的方法;

关于系统性能测试,作者提到首先要定义Latency的值,然后是开发测试工具,后面进入系统性能测试阶段。同时,作者也分享了一些性能测试的经验:要关注测试中Latency取值的分布情况、峰值极限、系统正常运行的负载极限。对于性能测试,作者总结”性能测试是一细活和累活”。

对于定位系统性能瓶颈,作者从两个方面进行介绍:

  • 查看操作系统负载:看CPU使用量,看IO大小,看网络带宽使用情况;
  • 利用性能测试工具Profiler测试,定位程序中的问题;

另外,作者提到:“对于性能测试,不同的Throughput会出现不同的测试结果,不同的测试数据也会有不同的测试结果。所以,用于性能测试的数据非常重要,性能测试中,我们需要观测试不同Throughput的结果。”

作者分享了自己的经验,首先介绍了性能调优的策略:

  • 用空间换时间;
  • 用时间换空间;
  • 简化代码;
  • 并行处理;

接着,作者系统总结分享了一些性能调优的方法,包括有:算法调优(过滤算法、哈希算法、分而治之和预处理)、代码调优(字符串操作、多线程调优、内存分配、异步操作、语言和代码库)、网络调优(TCP调优、UDP调优、网卡调优、其他网络性能)、系统性能(I/O模型、多核CPU调优、文件系统调优)、数据库调优(数据库引擎调优、SQL语句优化)。

陈皓在文章的后面提到撰文的初衷是由于@淘宝褚霸强推的highscalability.com上的这篇文章:Big List Of 20 Common Bottlenecks,大家也可以去了解一下。



分享到:


评论加载中...
内容:
评论者: 验证码:
  

Copyright@ 2011-2017 版权所有:大连仟亿科技有限公司 辽ICP备11013762-1号   google网站地图   百度网站地图   网站地图

公司地址:大连市沙河口区中山路692号辰熙星海国际2215 客服电话:0411-39943997 QQ:2088827823 42286563

法律声明:未经许可,任何模仿本站模板、转载本站内容等行为者,本站保留追究其法律责任的权利! 隐私权政策声明