在本课中,
我们将讨论性能问题｡
具体来说, 就是您将在系统上观察到的缓慢或缓慢的性能｡
现在, 性能问题是计算机系统中最难正确诊断的问题之一,
因为它们可能与硬件相关, 与软件相关, 或两者的混合｡
由于这个原因, 很难准确地找出问题所在,
但我将在本课中为您提供一些一般性指导｡
现在, 当您开始解决性能问题时,
您应该始终使用结构化的方法,
并尝试划分可能导致性能问题的每个不同问题｡
首先, 我们需要知道给定系统的基线是什么｡
例如, 假设我有一个系统, 它有一个3千兆赫兹的处理器,
16千兆字节的内存, 一个1太字节的硬盘驱动器, 和一个1千兆每秒的网卡｡
现在, 知道所有这些规范是好的, 但是,
如果我从来没有真正接触过这个系统之前或看过它,
我真的不知道他们是如何一起工作的｡
因此, 当你有一个新系统时,
你想观察这个系统及其当前的运行方式｡
以我刚才给你的示例系统为例, 当我们第一次得到这个全新的系统时,
我们应该知道正常的感觉是什么｡
它的运行速度有多快？
当我们只加载了操作系统, 或者打开了操作系统和办公套件时,
它每天使用多少RAM？
我们还需要知道网络有多快｡
因为仅仅因为我们有一个每秒1千兆位的卡,
并不意味着我们得到每秒1千兆位的吞吐量｡
除此之外, 我们还得看看硬盘｡
我说是个1TB的硬盘, 但我没告诉你,
是固态硬盘吗？
它是一个硬盘驱动器运行在5400 RPM,
或7,200 RPM, 或10,000 RPM｡
所有这些都会有不同的表现｡
现在, 一旦您知道了正常的性能是什么,
您就可以确定什么是缓慢或缓慢的性能, 然后您就能够确定这些领域是什么,
您需要集中精力进行故障排除｡
现在, 除了能够根据我们观察到的缓慢性能来确定这些子系统中的哪个实际上会成为问题之外,
我们还可以进行配置更改以优化这些子系统｡
例如, 如果我们开始看到普通用户总是用完RAM,
我们可能想从8 GB升级到16 GB, 或者从16 GB升级到32
GB｡
因为这是提高系统性能最简单､
最容易的方法之一｡
但是, 如果你正在经历缓慢的性能,
你看看你的空闲内存,
你有8GB的空闲内存, 16, 然后升级到32可能不会为你做很多性能方面, 因为你还没有使用所有的内存｡
因此, 这些是您在解决性能问题时必须考虑的问题｡
现在, 除了所有这些,
你还想确保你的系统没有过热｡
我们的许多现代系统都对它们的处理单元进行了节流,
以便能够保护自己免受过热的影响｡
所以, 如果你的系统开始变热, 应该以3GHz运行的处理器实际上可能会降低到2GHz或1GHz｡
5千兆赫,
试图降低它所产生的热负荷, 并能够帮助系统过热｡
因为, 如果系统过热,
它可能会重新启动或关闭｡
因此, 很多温度传感器实际上会降低图形处理器或中央处理器等组件的速度,
从而降低整体热负荷｡
如果你有一个有故障的温度传感器,
这实际上可以表明你有一个比实际存在的更高的温度,
因此, 你的CPU将开始降低其性能来补偿｡
所以也要记住这点｡
当您对性能问题进行故障排除时,
需要考虑的另一件事是任何可能的错误配置｡
例如, 假设您将内存从8
GB升级到16 GB｡
那么, 当你这样做的时候,
你可能已经取出了两个4G的模块,
并放入了两个新的8G模块, 但是你把它们放在了插槽0和1, 而不是插槽0和2｡
所以你的内存不是在双通道模式下运行｡
相反, 它只在单通道模式下运行｡
这将使您的性能比旧的8GB系统更慢,
因为您一次只能访问64位而不是128位,
即使您将内存增加了一倍,
也会有效地将性能降低一半｡
因此, 这些类型的错误配置确实会在整个系统中产生级联效应｡
另一个常见的错误配置可能发生在操作系统或应用软件本身｡
例如, 我见过很多人在windows中增加页面大小,
或者在Linux中增加交换空间｡
他们认为这将为他们提供更好的性能,
但实际上, 这只是为您提供更多的虚拟内存,
这会导致从物理内存到硬盘或固态设备的更多交换, 从而降低整个系统的速度｡
因此, 在开始配置系统时,
您需要记住所有这些事情｡
记住, 这些事情都不是孤立的｡
当你遇到这些性能问题时,
可能是无数不同的事情同时对你不利｡
它可以是操作系统,
可以是您的应用程序,
可以是您的配置, 可以是您的网络,
也可以是您的硬件｡
能够通过将所有东西分解为子系统来识别这些问题,
并识别这些性能问题, 对于现场技术人员来说至关重要｡