本文译自Wikipedia的Performance tuning词条,原词条中的不少链接和扩展内容非常值得一读,翻译过程中暴露了个人工程学思想和英语水平的不足,翻译后的内容也失去很多准确性和丰富性,需要在之后的时间继续细读。

Performance Tuning特指计算机系统的性能优化工作。它通常是根据某个现实或潜在的性能问题而发起的。绝大部分系统都会因为负载的升高而导致性能下降,一个系统对于负载的可承受能力称为可扩展性(scalability),调整系统使其可以承受更大的负载就是performance tuning代名词.

系统性的调优工作可以遵循以下步骤:

  • Assess the problem and establish numeric values that categorize acceptable behavior.
  • Measure the performance of the system before modification.
  • Identify the part of the system that is critical for improving the performance. This is called the bottleneck.
  • Modify that part of the system to remove the bottleneck.
  • Measure the performance of the system after modification.
  • If the modification makes the performance better, adopt it. If the modification makes the performance worse, put it back the way it was.
  • 评估问题,为系统分类建立可接受的度量指标
  • 测量系统调整前的性能表现
  • 分析系统运行性能的瓶颈
  • 调整系统消除瓶颈
  • 测量系统调整后的性能表现
  • 如果性能改善,则采纳调整方法;如果未得到改善,回滚调整措施

这种测度-评估-改进-学习的工作方法来自QA体系。

性能问题往往体现为系统运行缓慢或者失去响应,它往往是因为负载过高,导致系统某些组件达到了其最大响应能力的限制,这些限制我们称其为系统瓶颈。有一些方法可以用以改进系统性能,其中包括code optimization,configuration optimization,caching strategy,load balancing,distributed computing和self-tuning。

性能分析:
性能分析也叫做profiling,是一项采集程序运行数据以研究程序运行情况的工作。它的目的是分析和判断对程序的哪个部分进行优化。profiler是指分析程序运行情况的工具,特别是分析函数运行的频度和持续时间。最早的profiler出现在1970s,人们往往根据它们的输出信息的类型和数据采集的方式对他们进行分类。

性能工程:
性能工程学科包括角色、技能、活动、实践、工具和可交付成果,用于满足设计系统的非功能性需求,如增加业务收入,减少系统故障和项目延期,避免不必要的资源和工作投入。几种常见的不同方法的活动:

  • 识别关键流程
  • 细化流程的用例和系统容量说明。
  • 制度建设,包括性能调优。
  • 构建系统的部署
  • 服务管理,包括系统部署后的实施活动

self-tuning:
self-tuning系统能够优化其内部的运行参数,以最大化或最小化目标函数的实现,例如最大化效率或最小化错误。self-tuning系统通常表现出非线性自适应控制。self-tuning系统已经成为航空航天工业几十年来的一个品质证明,像这类反馈是生成最优非线性多变量控制流程所必需的。典型例子如TCP协议的拥塞控制.

Performance Tuning的更多相关文章

  1. Spark SQL 之 Performance Tuning & Distributed SQL Engine

    Spark SQL 之 Performance Tuning & Distributed SQL Engine 转载请注明出处:http://www.cnblogs.com/BYRans/ 缓 ...

  2. IBM HTTP Server Performance Tuning

    IBM HTTP Server Performance Tuninghttp://publib.boulder.ibm.com/httpserv/ihsdiag/ihs_performance.htm ...

  3. 30 分钟快快乐乐学 SQL Performance Tuning

    转自:http://www.cnblogs.com/WizardWu/archive/2008/10/27/1320055.html 有些程序员在撰写数据库应用程序时,常专注于 OOP 及各种 fra ...

  4. PostgreSQL Hardware Performance Tuning

    Bruce Momjian POSTGRESQL is an object-relational database developed on the Internet by a group of de ...

  5. Performance Tuning guide 翻译 || 前言

    CSDN 对格式支持比較弱,能够到http://user.qzone.qq.com/88285879/blog/1399382878 看一致的内容. 前言Preface 包含例如以下几个小节 l Au ...

  6. Performance Tuning guide 翻译 || Performance Tuning Guide 11G中新增特性

    CSDN 对格式支持比較弱.能够到http://user.qzone.qq.com/88285879/blog/1399382878 看一致的内容. Performance Tuning Guide  ...

  7. mysql优化---优化工具MySQL performance tuning primer script

    MySQL performance tuning primer script一个简单好用的mysql优化工具,其实一个shell脚本 下载: $ wget http://www.day32.com/M ...

  8. 老李分享: Oracle Performance Tuning Overview 翻译下

    1.2性能调优特性和工具 Effective data collection and analysis isessential for identifying and correcting perfo ...

  9. 老李分享: Oracle Performance Tuning Overview 翻译

    老李分享: Oracle Performance Tuning Overview 翻译   poptest是国内唯一一家培养测试开发工程师的培训机构,以学员能胜任自动化测试,性能测试,测试工具开发等工 ...

随机推荐

  1. 黑云压城城欲摧 - 2016年iOS公开可利用漏洞总结

    黑云压城城欲摧 - 2016年iOS公开可利用漏洞总结 作者:蒸米,耀刺,黑雪 @ Team OverSky 0x00 序 iOS的安全性远比大家的想象中脆弱,除了没有公开的漏洞以外,还有很多已经公开 ...

  2. IE6/7下空div占用空间的问题

    最近注意力没在前端上面,工作碰到这样一个问题,下意识的写了句 font-size:0;line-height:0;哪知道引发了更大的bug.后来插入数据进去的时候都不显示了..再后来百度一番找到,原来 ...

  3. MVVM框架从WPF移植到UWP遇到的问题和解决方法

    MVVM框架从WPF移植到UWP遇到的问题和解决方法 0x00 起因 这几天开始学习UWP了,之前有WPF经验,所以总体感觉还可以,看了一些基础概念和主题,写了几个测试程序,突然想起来了前一段时间在W ...

  4. 红黑树——算法导论(15)

    1. 什么是红黑树 (1) 简介     上一篇我们介绍了基本动态集合操作时间复杂度均为O(h)的二叉搜索树.但遗憾的是,只有当二叉搜索树高度较低时,这些集合操作才会较快:即当树的高度较高(甚至一种极 ...

  5. Webpack 配置摘要

    open-browser-webpack-plugin 自动打开浏览器 html-webpack-plugin 通过 JS 生成 HTML webpack.optimize.UglifyJsPlugi ...

  6. C++中的const

    一,C++中const的基本知识 1.C++中const的基本概念 1.const是定义常量的关键字,表示只读,不可以修改. 2.const在定义常量的时候必须要初始化,否则报错,因为常量无法修改,只 ...

  7. Mysql命令大全

    格式: mysql -h主机地址 -u用户名 -p用户密码 1.连接到本机上的MYSQL.首先打开DOS窗口,然后进入目录mysql\bin,再键入命令mysql -u root -p,回车后提示你输 ...

  8. 神技!微信小程序(应用号)抢先入门教程(附最新案例DEMO-豆瓣电影)持续更新

    微信小程序 Demo(豆瓣电影) 由于时间的关系,没有办法写一个完整的说明,后续配合一些视频资料,请持续关注 官方文档:https://mp.weixin.qq.com/debug/wxadoc/de ...

  9. EF上下文对象线程内唯一性与优化

    在一次请求中,即一个线程内,若是用到EF数据上下文对象,就创建一个,这也加是很多人的代码中习惯在使用上下文对象时,习惯将对象建立在using中,也是为了尽早释放上下文对象, 但是如果有一个业务逻辑调用 ...

  10. TCP/IP基础

    TCP/IP 是用于因特网 (Internet) 的通信协议. 计算机通信协议是对那些计算机必须遵守以便彼此通信的规则的描述. 什么是 TCP/IP? TCP/IP 是供已连接因特网的计算机进行通信的 ...