系统性能调优与监控全解析
1. 磁盘 I/O 性能优化与监控
1.1 写后处理机制
在磁盘 I/O 操作中,存在写后处理机制。数据会先在内存中处理,写后阈值是基于每个文件的,这会使页面在同步守护进程运行之前就被写入磁盘,让 I/O 在整个工作负载中分布更均匀。写后处理有顺序和随机两种类型,可使用 vmtune 命令更改写后分区的大小和写后阈值。
普通文件会自动映射到段以提供映射文件,这意味着普通文件访问会绕过传统的内核缓冲区和块 I/O 例程,在有额外内存时,文件能使用更多内存,文件缓存不受声明的内核缓冲区区域限制。
1.2 I/O pacing 机制
由于大多数写操作是异步的,可能会积累几兆字节的 FIFO I/O 队列,完成这些队列可能需要几秒时间。如果每次磁盘读取都要花几秒通过队列,会严重影响交互式进程的性能。为解决这个问题,VMM 有 I/O pacing 选项来控制写操作。
I/O pacing 不会改变 I/O 的接口或处理逻辑,只是限制对一个文件的未完成 I/O 数量。当进程试图超过这个限制时,它会被挂起,直到有足够的未完成请求被处理,达到较低的阈值。
磁盘 I/O pacing 旨在防止产生大量输出的程序使系统的 I/O 设施饱和,避免影响其他要求较低的程序的响应时间。它对每个段(实际上是每个文件)的所有未完成 I/O 总和设置高低水位标记。当进程试图写入一个已有高水位标记的未完成写操作的文件时,该进程会被挂起,直到有足够的 I/O 完成,使未完成写操作的数量小于或等于低水位标记。
超级会员免费看
订阅专栏 解锁全文

1437

被折叠的 条评论
为什么被折叠?



