本文译自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. 关于.NET异常处理的思考

    年关将至,对于大部分程序员来说,马上就可以闲下来一段时间了,然而在这个闲暇的时间里,唯有争论哪门语言更好可以消磨时光,估计最近会有很多关于java与.net的博文出现,我表示要作为一个吃瓜群众,静静的 ...

  2. 【声明】前方不设坑位,不收费!~ 我为NET狂官方学习计划

    发个通知,过段时间学习计划相关的东西就出来了,上次写了篇指引文章后有些好奇心颇重的人跟我说:“发现最近群知识库和技能库更新的频率有点大,这是要放大招的节奏啊!” 很多想学习却不知道如何规划的人想要一个 ...

  3. jQuery学习之路(6)- 简单的表格应用

    ▓▓▓▓▓▓ 大致介绍 在CSS技术之前,网页的布局基本都是依靠表格制作,当有了CSS之后,表格就被很多设计师所抛弃,但是表格也有他的用武之地,比如数据列表,下面以表格中常见的几个应用来加深对jQue ...

  4. 初探Vue

    Vue.js(读音/vju:/,类似于view),是近来比较火的前端框架,但一直没有怎么具体了解.实现过,就知道个啥的MVVM啦,数据驱动啦,等这些关于Vue的虚概念. 由于最近,小生在公司中,负责开 ...

  5. .net 分布式架构之任务调度平台

    开源地址:http://git.oschina.net/chejiangyi/Dyd.BaseService.TaskManager .net 任务调度平台 用于.net dll,exe的任务的挂载, ...

  6. [C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

    using System; using System.IO; using System.Security.Cryptography; using System.Text; namespace Wen. ...

  7. Java 为值传递而不是引用传递

    ——reference Java is Pass by Value and Not Pass by Reference 其实这个问题是一个非常初级的问题,相关的概念初学者早已掌握,但是时间长了还是容易 ...

  8. 就这么漂来漂去---一个毕业三个月的java程序员的裸辞风波

    注:这并不是一篇技术文章,而是记录了我这几个月经历的入职,裸辞,找工作的心路历程,简单介绍一个博主的情况,我是16年毕业生,校招进了一家北京的公司,java开发,和很多年轻人一样,干了一段时间,我发现 ...

  9. C# 对象实例化 用json保存 泛型类 可以很方便的保存程序设置

    参考页面: http://www.yuanjiaocheng.net/webapi/test-webapi.html http://www.yuanjiaocheng.net/webapi/web-a ...

  10. LINQ to SQL Where条件

    1. 适用场景 实现条件的过滤和查询等功能. 2. 说明 跟SQL语句中的where作用相似,都起到了范围的限定即过滤的作用,而判断条件是紧跟后面的条件子句.where主要分为三种形式:简单形式.条件 ...