더북(TheBook)

이진 메시지 포맷

이진 포맷은 종류가 다양하지만 프로토콜 버퍼7와 아브로8가 유명합니다. 이 두 포맷은 메시지 구조 정의에 필요한 타입 IDL을 제공하며, 컴파일러는 메시지를 직렬화/역직렬화하는 코드를 생성합니다. 따라서 서비스를 API 우선 접근 방식으로 설계할 수밖에 없습니다! 그리고 정적 타입 언어로 클라이언트를 작성할 경우, 클라이언트가 API를 올바르게 사용하는지 컴파일러로 확인할 수 있습니다.

하지만 아브로 컨슈머는 스키마를 알고 있어야 메시지를 해석할 수 있기 때문에 API 발전 측면에서는 프로토콜 버퍼가 더 용이합니다. 스리프트(Thrift), 프로토콜 버퍼, 아브로를 비교 분석한 블로그 게시글9도 있으니 참고하세요.

RPI(Remote Procedure Invocation, 원격 프로시저 호출) 패턴부터 하나씩 메시지를 실어 나르는 IPC를 자세히 살펴봅시다.

 

 


 

 

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.