콘텐츠로 이동

메시지·와이어 (message)

패킷·RPC·게이트웨이에서 쓰는 메시지 타입, msgId, 직렬화, 필드 일부만 보내기 / 덮어쓰기까지 묶어서 봅니다.

프로토콜 문자열이 호환인지 득팩 전용인지와이어 프로토콜 계열에서 먼저 구분합니다.


IDL에서

  • message 는 네트워크 쪽 명명 관례에 맞춘 struct입니다. 필드 번호·필수 여부는 Thrift/득팩 규칙을 따릅니다.
  • 서비스: Thrift 스타일 service / 메서드는 RPC 정의로 AST에 남습니다(스택별 구현은 생성기·런타임에 따름).

프로토콜·레지스트리

  • ProtocolRegistry: 메시지 타입 ↔ msgId(및 관련 식별자) 매핑. 디스패치·직렬화 라우팅에 사용.
  • CLI --protocol·wireFamily: 와이어 프로토콜 계열 표 참고. Thrift 호환(tbinary 등)은 생성 C#·C++ 중심이며, JSinteropRootStruct 로 동일 와이어를 쓰거나 스키마 없이 pack·json·yaml 을 씁니다.
  • C#: IDeukPackReader / IDeukPackWriter 로 프로토콜별 읽기·쓰기.
  • --wire-profile: 필드 서브셋·DTO 노출용 생성물. 와이어 프로파일.

통합 Write (필드 서브셋·오버라이드)

  • C#: Write(oprot, fieldIds, overrides?)fieldIds가 null이 아니면 해당 필드만; overrides로 필드 ID별 치환; 안 쓰는 인자는 null.
  • JavaScript: 동일하게 (obj, fieldIds, overrides) 형태의 toJson / toBinary(및 pack 헬퍼).

튜토리얼: 통합 Write
상세 API: DEUKPACK_WRITE_WITH_OVERRIDES_API
표 형식 요약: API·타입 참조 — 통합 Write (문서 내 «통합 Write» 절).


손으로 익히기

제품 설명: 프로토콜.