1.1常用建议
1.1.1记大量的笔记(记录所有的事情)
在做性能调优问题的时候很重要的一个操作就是记录下所有的事情,包括每一个输出、执行的结果。可以新建一个文件夹,然后把结果的文件都塞到该文件夹内。包括如下:

    • 记录硬件/软件的配置情况,比如dmesg和uname –a的输出
    • 保存并组织性能结果,记录系统配置的同时也要保存测试的结果。
    • 写下命令行调用,可以把复杂的命令写成script或者记录到终端上。
    • 记录研究信息和URL,将互联网找到的相关信息记录下来。
      记录这些信息之外,在调查问题时,还要牢记以下几点:
    • 结果的含义可能是不明确的,有时候你需要更多的信息才能理解结果的含义
    • 所有的信息都是有用的,就好像侦查破案一样
    • 定期回顾你的笔记可以得到新的想法——温故而知新。
      1.1.2 自动执行重复任务
      Linux 的命令很多,输入负责的命令很容易出现错误。所以,自动执行性能工具和应用程序测试是个好办法。
    • 性能工具的调用,建议写成script或者保存到一个txt文件里面。
      1.1.3 尽可能选择低开销工具
      一般情况下,观察系统会修改系统的行为。(物理上叫做海森堡不确定性原理)所以,我们尽量要使用低开销的工具,比如用ps就不错,而用memprof或者valgrind就开销过大了,会改变系统的行为。
      1.1.4 使用多个工具来搞清楚问题
      只使用一个工具可能会造成判断上的误导,比如工具A说是IO慢,B说是系统使用了大量的交换。如果只根据A而更换更快的磁盘,结果性能提升很少。实际应该要增加内存,少使用交换,这样就不会有大量的磁盘IO了。
      1.1.5 相信你的工具
      工具是公正的,要相信它。
      1.1.6 利用其他人的经验(慎重)
      利用他人的经验可能会事半功倍,但是要保持怀疑的态度。
      1.2 性能调查概要
      1.2.1 找到指标、基线和目标
    • 确定指标,知道什么时候应该要停止优化,比如web的每秒服务的请求数。
    • 确定基线,在调整和优化之前,运行应用程序并记录其性能,这就是基线。
    • 确定目标,目标会引导你完成性能的追踪。可以尝试寻找其他有相同配置的人,查找工业标准测试程序的结果或者在不同的OS或应用程序上使用你的硬件。
      1.2.2 追踪近似问题
      1.2.3 查看问题是否早已解决
      网上查找相似的信息。
      1.2.4 项目开始(启动调查)
      开始调查的使用可以尝试下面的一些方法。
      分离问题、利用系统差异发现原因、一次只改变一件事、始终在优化后重新测量。
      1.2.5 记录,记录,记录

Linux性能优化 第一章 性能追踪建议的更多相关文章

  1. Linux性能优化 第二章 性能工具:系统CPU

    2.1 CPU性能统计信息 2.1.1运行队列统计 在Linux中,一个进程要么是可运行的,要么是阻塞的(正在等待一个事件的完成).阻塞进程可能在等待从I/O设备来的数据,或者是系统调用的结果如果一个 ...

  2. mysql 查询性能优化第一章 为什么查询速度会慢

    一 为什么查询速度会慢 在尝试编写快速的查询之前,咱们需要清除一点,真正重要的是响应时间.如果把查询看成是一个任务,那么它由一系列子任务组成,每个子任务都会消耗一定的时间.如果要有 优化查询,实际上要 ...

  3. Tsql2008查询性能优化第一章---APPLY

       APPLY运算符涉及以下两个步骤中的一步或两步(取决于APPLY的类型):           1.A1把右表表达式应用于左表的行.           2.A2:添加外部行.       Ap ...

  4. Python 优化第一步: 性能分析实践 使用cporfile+gprof2dot可视化

    拿来主义: python -m cProfile -o profile.pstats to_profile.py gprof2dot -f pstats profile.pstats |dot -Tp ...

  5. web性能优化-网络传输性能优化

    浏览器工作原理:https://www.cnblogs.com/thonrt/p/10008220.html 浏览器渲染原理: https://www.cnblogs.com/thonrt/p/100 ...

  6. 性能优化——Web前端性能优化

    核心知识点: 1.排查网站性能瓶颈的手法:分析各个环节的日志,找出异常部分 2.Web前端:网站业务逻辑之前的部分(浏览器.图片服务.CDN) 3.优化手段 1)浏览器优化 (1)减少http请求 a ...

  7. Android App性能优化笔记之一:性能优化是什么及为什么?

    By Long Luo   周星驰的电影<功夫>里面借火云邪神之口说出了一句至理名言:“天下武功,唯快不破”. 在移动互联网时代,同样如此,留给一个公司的窗口往往只有很短的时间,如何把握住 ...

  8. 微擎开启性能优化里面的性能优化memcache内存优化及数据库读写分离

    http://www.mitusky.com/forum.php?mod=viewthread&tid=3135 [微擎 安装使用] 微擎开启性能优化里面的性能优化memcache内存优化及数 ...

  9. Linux性能优化之内存性能统计信息

    关于内存的概念及其原理在任何一本介绍操作系统的书本中都可以查阅到. 理论放一遍,在Linux操作系统中如何查看系统内存使用情况呢?看看内存统计信息有哪些维度. 一.内存使用量 详细使用方法,man f ...

随机推荐

  1. day8 大纲

    01 昨日内容回顾 文件操作 文件操作的流程: 1,打开文件创建文件句柄. 2,对文件句柄进行操作. 3,关闭文件句柄. 读, r r+ rb r+b read() 全部读取 read(n) 读取一部 ...

  2. learnopengl“入门”的全部代码

    projection 里的角度,角度越大,物体离摄像机越远:角度越小,物体离摄像机越近,这个角度表示视野(fov),视野越大,看到的物体就越小 头文件 #ifndef SHADER_H_INCLUDE ...

  3. Python3:sorted()函数及列表中的sort()函数

    一.sort,sorted函数介绍:   Sort函数是list列表中的函数,而sorted可以对list或者iterator进行排序.   下面我们使用help来查看他们的用法及功能: sort: ...

  4. tomcat中catalina是什么

    catalina 就是Tomcat服务器使用的 Apache实现的servlet容器的 名字. Tomcat的核心分为3个部分: (1)Web容器---处理静态页面: (2)catalina --- ...

  5. JDK1.8中如何用ScriptEngine动态执行JS

    JDK1.8中如何用ScriptEngine动态执行JS jdk1.6开始就提供了动态脚本语言诸如JavaScript动态的支持.这无疑是一个很好的功能,毕竟Java的语法不是适合成为动态语言.而JD ...

  6. Emacs的一些事情(与Vi的争议及使用)

    一年成为Emacs高手(像神一样使用编辑器)推荐文章 http://ftp.gnu.org/gnu/emacs/windows/http://blog.csdn.net/redguardtoo/art ...

  7. Release Notes for XE5

    开发者之前说明 http://docwiki.embarcadero.com/RADStudio/XE5/en/Release_Notes_for_XE5

  8. Ntfs 下的链接符号创建

    熟悉过 Unix/Linux 都应该知道,Unix/Linux 用 ln 建立硬链接,ln -s 建立软链接(符号链接). 硬链接和符号链接的区别 Ntfs下的也有链接符: 内置命令:mklink   ...

  9. tomcat源码 Connector

    Connector容器主要负责解析socket请求,在tomcat中的源码位于org.apache.catalina.connector和org.apache.coyote包路径下:通过上两节的分析, ...

  10. java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/JPEGCodec 解决方案

    使用java生成图片的时候,报了java.lang.NoClassDefFoundError: com/sun/image/codec/jpeg/JPEGCodec 错误. 根据这个类的api说明,在 ...