IPC 선택 기준

IPC 선택 기준

파이프, 메시지 큐, 공유 메모리, 시그널, 소켓은 서로 다른 통신 모양과 실패 지점을 갖습니다.

shape바이트 흐름 또는 메시지
relation부모-자식 또는 독립
volume소량 이벤트와 대량 데이터
sync락과 순서 보장
파이프

셸 조합처럼 단방향 바이트 스트림을 부모-자식 프로세스 사이에 빠르게 연결합니다.

메시지 큐

메시지 경계가 필요하고 생산자와 소비자의 속도를 분리해야 할 때 적합합니다.

공유 메모리

가장 빠른 대량 데이터 공유 수단이지만 뮤텍스나 세마포어 없이는 경쟁 조건이 생깁니다.

시그널

데이터 전달보다 종료, 재로드, 알림처럼 작은 이벤트 전달에 어울립니다.

Unix 소켓

독립 프로세스 사이의 양방향 통신과 로컬 서버-클라이언트 구조에 강합니다.

메시지 경계→크기→동기화

먼저 메시지 경계와 데이터 크기를 정하고, 다음으로 동기화와 복구 방식을 붙입니다.