aio
'aio' 指令在 NGINX 中启用异步 I/O 操作,以提高性能。 — NGINX HTTP Core
aio
httpserverlocation
语法aio on | off | io_uring;
默认值off
上下文http, server, location
模块NGINX HTTP Core
参数1
说明
'aio' 指令在 NGINX 中允许配置用于文件读写的异步 I/O 操作。通过启用异步 I/O,NGINX 在进行 I/O 操作时不会阻塞,这样它可以处理更多连接,因为在等待文件操作完成时仍能继续处理其他请求。这对提供静态文件或进行文件上传/下载的应用尤为有利。 该指令接受单个参数,用于指定要使用的异步 I/O 方法。对于类 Unix 操作系统,有效选项是 `off`(禁用异步 I/O)、`on`(启用异步 I/O)或 `io_uring`(在支持的情况下使用 io_uring 接口进行异步 I/O 操作)。设置后,NGINX 将对文件的读/写操作使用异步 I/O,在高负载下显著提高吞吐量,同时保持较低的延迟。
配置示例
http {
aio on;
server {
location /files/ {
root /data;
}
}
}⚠
确保你的操作系统支持所选的 I/O 方法(例如,io_uring 需要较新的 Linux kernel 版本)。
⚠
注意与传统的 blocking I/O 相比,调试异步操作时可能会更复杂。