跳到内容跳到页面导航:上一页 [access key p]/下一页 [access key n]
documentation.suse.com / SUSE Linux Enterprise Server 文档 / 系统分析和微调指南 / 基础 / 有关系统微调的一般说明
适用范围 SUSE Linux Enterprise Server 15 SP2

1 有关系统微调的一般说明

本手册介绍如何查明导致性能问题的原因,并提供这些问题的解决方法。在您开始微调系统之前,应确保已排除常见问题并已找到问题的原因。另外,还应针对如何微调系统制定详细的计划,因为应用随机出现的微调提示往往无助于解决问题,甚至可能让情况变得更糟。

过程 1.1︰ 微调系统时的一般方法
  1. 指定需要解决的问题。

  2. 如果性能下降是近期才出现的问题,请确定最近对系统所做的任何更改。

  3. 确定将问题视为性能问题的原因。

  4. 指定可用于分析性能的度量。例如,此度量可以是延迟、吞吐量、同时登录用户最大数量或活动用户最大数量。

  5. 使用上一步骤中指定的度量来测量当前性能。

  6. 确定应用程序将大部分时间消耗在哪个(哪些)子系统上。

    1. 监视系统和/或应用程序。

    2. 分析数据,对消耗时间的子系统进行分类。

  7. 微调在上一步骤中确定的子系统。

  8. 使用前面相同的度量,在不进行监视的情况下重新测量当前性能。

  9. 如果性能仍不可接受,请从步骤 3 重新开始。

1.1 确认要解决的问题

在开始微调系统之前,请尝试尽可能具体地描述问题。类似系统速度慢!之类的陈述不是有用的问题说明。例如,要对是需要整体提高系统速度还是仅在高峰期提高进行区分。

此外,应确保您能够对问题应用测量,否则无法校验微调是否成功。您应始终能对微调前微调后进行比较。要使用的度量取决于您正在调查的方案或应用程序。例如,可通过以下术语描述相关的 Web 服务器度量:

延迟

传送页所需的时间

吞吐量

每秒提供的页数量,或每秒传送的 MB 数量

活动用户

可以下载页同时仍可以在可接受的延迟范围内接收页的最大用户数

1.2 排除常见问题

性能问题常常是由网络或硬件问题、bug 或配置问题造成的。在尝试微调系统之前,请确保排除下面所列的此类问题:

  • 检查 systemd 日记的输出(请参见第 17 章 “journalctl:查询 systemd 日记)中的异常项。

  • 检查(使用 topps)是否有特定进程行为异常,不正常消耗 CPU 时间或内存。

  • 通过查看 /proc/net/dev 来检查网络问题。

  • 如果物理磁盘出现 I/O 问题,请确保其并非由硬件问题(使用 smartmontools)或整个磁盘导致。

  • 确保将后台作业安排在服务器负载较低的时段执行。此外,应以较低的优先级(通过 nice 设置)运行这些作业。

  • 如果计算机运行有使用相同资源的多个服务,请考虑将服务移到另一台服务器。

  • 最后,确保您的软件是最新的。

1.3 确定瓶颈

微调系统时,如何确定瓶颈往往是最困难的。SUSE Linux Enterprise Server 提供许多工具来帮助您完成此任务。有关一般系统监视应用程序和日志文件分析的详细信息,请参见第 II 部分 “系统监视”。如果问题需要长时间的深入分析,Linux 内核会提供执行此类分析的方法。有关具体范围,请参见第 III 部分 “内核监视”

收集数据后,需要对其进行分析。首先,检查服务器的硬件(内存、CPU、总线)及其 I/O 容量(磁盘、网络)是否足够。如果满足这些基本条件,则微调系统可能是有益的。

1.4 逐步微调

确保认真规划微调本身。请务必每次仅执行一个步骤。只有这样,才能测量所做的更改是起到了改善作用还是进一步产生了负面影响。应对每个微调活动进行足够长时间的测量,确保可以基于重要数据执行分析。如果您未测量到正面影响,请不要做出永久性更改。否则可能会在将来造成负面影响。