기존 RPC의 컨셉을 그대로 계승하며, RPC의 단점을 보완하여 Google 에서 만든 프레임워크 입니다. proto 파일에 IDL을 정의해주면, gRPC와 Protocol Buffer(이하 PB) complier에서 자동으로 Protocol Buffer(PB)코드, 서비스와 Stub 코드를 작성해주어 개발자는 생성된 코드로 로컬 함수를 호출하듯이 클라이언트 또는 서버에 요청, 응답을 주고 받을 수 있습니다. 서버에서는 생성된 인터페이스를 구현하고, 클라이언트 에서는 Stub을 이용하여 Server와 통신을 하면 됩니다. PB를 사용하여 직렬화 속도가 더 빨라지고, 데이터의 크기가 작아져 많이 사용하는 RESTful API( w/ JSON ) 보다 성능면에서 더 뛰어납니다. 특히 마이크로 서비스에서는 모..
목차 이전 포스팅 Google Protocol Buffer 이 포스팅에서는 Protocol Buffer 를 사용하면서, 상세하게 알아두면 좋을 만한 내용을 정리해두었습니다. ( 글은 Java를 기준으로 작성 되었습니다. ) 필드 숫자 할당 // .proto file message Person { optional string name = 1; optional int32 id = 2; optional string email = 3; } // project code using PB Code Person john = Person.newBuilder() .setId(1234) .setName("John Doe") .setEmail("jdoe@example.com") .build(); output = new Fi..
목차 개요 Protocol Buffer는 언어 및 플랫폼 중립적으로 사용할 수 있는 구조화된 데이터를 직렬화 할 수 있는 확장가능한 메커니즘 입니다. 데이터를 직렬화 하여, 데이터의 크기를 줄이고 빠른 파싱 속도를 장점으로 실제 구글 내부에서도 다양하게 사용을 하고 있으며 ( gRPC, Google Cloud, Envoy Proxy 등 ) Avro 파일 포맷에서도 사용 하고 있습니다. Google에서 공식적으로 여러 언어에서 지원(오픈소스)을 할 뿐만 아니라, Third-Praty에 의해 여러 언어에 대해서 지원을 하고 있습니다. Protocol Buffer는 .proto 파일, 컴파일러, protocol buffer 라이브러리로 구성이 됩니다. : .proto 파일에서는 직렬화 할 메시지를 정의 : 컴..
- Total
- Today
- Yesterday
- AWS
- elasticsearch
- tomcat
- Java
- JPA
- intellij
- SpringBoot
- Filter
- JSON
- Log
- scala
- spring
- Container
- Git
- maven
- Spark
- docker
- logstash
- Kibana
- install
- Index
- Postman
- Linux
- error
- Size
- apm
- mac
- gradle
- spring boot
- plugin
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |