io_worker_launch_interval
| 버전 | 기본값 | context | 타입 |
|---|---|---|---|
| 19 | 100ms | sighup | integer |
새 I/O worker process를 추가로 띄우기 전 확보해야 하는 최소 간격을 정한다. PostgreSQL 19(beta)에서 추가된 파라미터로, 기본값은 100ms다.
PostgreSQL 18에서는 I/O worker 수를 io_workers 하나로 고정했지만, PostgreSQL 19는 부하에 따라 pool 크기가 자동으로 늘고 주는 방식으로 바꿨다. io_min_workers가 pool의 하한, io_max_workers가 상한이며, worker가 늘어나는 속도는 io_worker_launch_interval이, 한가해진 worker가 정리되는 시점은 io_worker_idle_timeout이 제어한다. 네 파라미터 모두 io_method가 worker일 때만 효과가 있고, postgresql.conf 파일이나 서버 command line에서만 설정할 수 있다.
worker를 하나 띄운 뒤 이 간격이 지나야 다음 worker를 띄울 수 있다. 지속되지 않는 순간적인 I/O burst에 반응해 worker가 과도하게 늘어나는 것을 막는 안전장치다.
운영 노트: 대부분의 환경에서 기본값을 그대로 두면 된다. burst 초기 반응 속도가 아쉽다면 간격을 줄이기보다
io_min_workers를 올려 상시 대기 worker를 늘리는 쪽이 예측 가능하다.출처: PostgreSQL 19 문서