ClickHouse, PgBouncer를 so_reuseport 기반 멀티프로세스 구조로 4배 처리량 확보
Hacker News opinions
설정 예시 공유함: [pgbouncer]에 so_reuseport=1, peer_id 지정하고 [peers] 섹션에 unix_socket 경로로 서로 연결하는 방식임
우리는 쿠버네티스로 pgbouncer 돌려서 한 머신에 여러 프로세스 띄우는 게 오히려 쉬웠음. Azure에서 VM 유지보수로 인한 롤링 아웃테이지 대응에도 도움됨
이거 보고 재미로 rqbit 비트토렌트 클라이언트에 비슷한 걸 해킹해봤음. so_reuseport로 토렌트별 인스턴스 띄우고 rendezvous 시스템 만들어서 fd 패싱까지 구현함. clickhouse 사례랑 목적은 다르지만 이런 so_reuseport 코디네이션 자체가 재밌더라
HAProxy랑 여러 pgbouncer 인스턴스 조합 쓰면 안 되는 이유가 있나? 그게 더 간단해 보이는데
그냥 odyssey 써 이미 스케일 가능한 pgbouncer임 (야ndex에서 만든 것)