본문으로 건너뛰기

io_workers

I/O worker process를 몇 개 띄울지 정합니다. 기본값은 3이며, postgresql.conf나 서버 커맨드라인에서만 설정할 수 있습니다.

이 설정은 io_method가 worker일 때만 효과가 있습니다. PostgreSQL 18의 asynchronous I/O에서 worker 방식은 backend가 요청한 I/O를 전용 I/O worker process들이 대신 수행하는 구조라, worker 수가 곧 서버 전체가 동시에 처리할 수 있는 비동기 I/O의 폭을 결정합니다.

PostgreSQL 19(beta)에서는 이 파라미터가 io_min_workers, io_max_workers로 대체되어 worker 수가 두 값 사이에서 조절됩니다.

노트

운영 노트: I/O가 많은 서버에서 worker 3개가 병목이 되면 비동기로 발행된 요청이 대기열에 쌓입니다. storage가 병렬 I/O를 잘 받아 주는 NVMe급이라면 값을 올려 보면서 pg_stat_io와 대기 이벤트로 효과를 확인하는 식의 접근이 무난합니다. sighup 컨텍스트라 reload만으로 조정할 수 있습니다.

출처: PostgreSQL 18 문서