rpc 구성 블록
rpc 구성 블록 (RPC Configuration Block)
이 페이지는 Nomad 에이전트 구성의 rpc 블록에서 Nomad의 RPC 동작을 구성하는 방법에 대한 참조 정보를 제공해요. RPC 세션 구성, 스트림 수신 대기열(accept backlog), keepalive 간격, 개방 스트림 타임아웃을 수정해요.
출처: 문서
본문
이 값들을 비워두고 기본값을 사용하는 것을 강력히 권장해요. 기본값은 수천 개 노드로 구성된 클러스터에서 프로덕션 검증을 거친 값이에요. 특정 사용 사례를 개선할 명확한 이유가 있을 때만 rpc 블록을 구성하세요.
rpc {
accept_backlog = 256
keep_alive_interval = "30s"
connection_write_timeout = "10s"
max_stream_window_size = 262144
stream_open_timeout = "75s"
stream_close_timeout = "5m"
dial_timeout = "10s"
}
rpc 매개변수 (Parameters)
accept_backlog(int: 256)— RPC 서버의 수락을 기다리는 RPC 스트림(요청)이 얼마나 많을 수 있는지 제한해요.keep_alive_interval(string: 30s)— keep alive를 얼마나 자주 수행할지 지정해요.connection_write_timeout(string: 10s)— 안전 밸브용 타임아웃으로, 이 시간이 지나면 기본 연결에 문제가 있다고 의심하고 연결을 닫아요. 일반적으로 빠르게 진행되기를 기대하는 쓰기 작업에만 적용돼요.max_stream_window_size(int: 262144)— 스트림에 허용되는 최대 윈도우 크기(바이트)를 제어해요.stream_open_timeout(string: 75s)— 피어로부터 ACK를 기다리는 동안 스트림이 대기(pending) 상태로 유지되는 최대 시간이에요. 타임아웃에 도달하면 Nomad는 세션을 우아하게 닫아요. 0 값을 주면 스트림 개방 타임아웃이 비활성화되어 개방 스트림 호출이 무제한으로 차단될 수 있어요.stream_close_timeout(string: 5m)— close가 호출됐을 때 연결을 강제로 닫기 전에 스트림이 half-closed 상태로 유지되는 최대 시간이에요. 강제로 닫힌 연결은 수신 버퍼를 비우고, 해당 스트림에 대해 이후 수신되는 패킷을 버리며, 원격 측에 RST를 보내요.dial_timeout(string: 10s)— 피어 에이전트에 대한 새 아웃바운드 RPC 연결을 설정하는 데 허용되는 최대 시간을 제어해요.