광고 영역 (상단 디스플레이)

Protobuf .proto 빌더

message·enum·service·rpc 블록을 폼으로 입력하면 proto3 문법의 .proto 파일이 즉시 생성됩니다. repeated·optional·map·중첩 메시지 모두 지원합니다.

1. 파일 헤더

2. import (한 줄에 하나)

3. Messages

4. Enums

5. Services

6. 생성된 .proto

광고 영역 (결과 하단)

Protocol Buffers (Protobuf) 가이드

Protobuf는 Google이 만든 언어 중립·플랫폼 중립 직렬화 포맷입니다. JSON보다 작고 빠르며, 스키마를 .proto 파일로 명시한 후 protoc 컴파일러로 각 언어의 코드를 자동 생성해 사용합니다. gRPC의 IDL로 사실상 표준이며, 카프카·Pub/Sub·CDN 로그 등에서도 폭넓게 쓰입니다.

proto3 핵심 문법

필드 번호 규칙

한번 배포된 필드 번호는 절대 재사용하지 마세요. 필드를 삭제했다면 reserved 3, 5 또는 reserved "old_name"로 예약해 호환성을 보호합니다. 번호는 1~536,870,911 범위이고, 19000~19999는 Protobuf 내부 예약 번호입니다.

컴파일 명령

자주 묻는 질문 (FAQ)

Q. proto2와 proto3 중 무엇을 쓰나요?

A. 신규 프로젝트는 proto3가 표준입니다. 필수 필드(required)가 사라지고 모든 필드는 옵셔널이 됩니다. 호환성을 위해 옛 시스템과 인터페이스해야 하면 proto2를 유지합니다.

Q. 필드 번호를 1부터 시작해야 하나요?

A. 0은 사용할 수 없습니다. 1부터 시작하며, 자주 사용하는 필드를 1~15에 배치해 와이어 크기를 줄이는 것이 좋습니다.

Q. gRPC가 아니어도 사용 가능?

A. 네. 단순 직렬화 포맷으로 Kafka 페이로드·파일 저장·HTTP 바디 등에서도 자유롭게 활용할 수 있습니다. 본 빌더의 service 섹션은 비워 둬도 됩니다.