thrift(2)
-
[Apache Thrift] 아파치 쓰리프트 간단하게 이해하기
개요 아파치 쓰리프트는 페이스북에서 서로 다른 언어간의 통신을 위하여 개발되었다. 원격 프로시저 호출(Remote Procedure Call)로 언어에 상관 없이 서로 통신할 수 있도록 도와준다. 예를 들면 PHP에서 작성한 기능을 파이썬과 Go언어에서 자유롭게 호출해서 사용할 수 있다. 단순히 하나의 함수 호출이 아니라, REST API 서버처럼 자유롭게 개발을 할 수 있다. thrift와 호환되는 언어들은 모두 비슷하지만 각자 다른 인터페이스 정의 규칙을 가지고 있다. 아파치 쓰리프트에서는 .thrift 파일에 변수의 타입과 이름 그리고 함수의 매개변수, 반환값과 예외 등의 정의를 하고, thrift를 사용하여 옵션으로 변환하려는 언어를 적어주면 .thrift 파일에 입력된 정의로 각 언어에 맞게 코..
2022.01.20 -
[🧙Kafka] 카프카 구축 (8) - Serializer: JSON vs Avro vs Thrift 비교
About 카프카에서 데이터를 전송할 때 직렬화를 통해 바이너리 배열로 변환해야 한다. 직렬화를 하는 이유는 어떤 값을 참조하는 주소가 담긴 변수를 저장했다고 했을 때, 다시 불러오게 된다고 해도 가르키던 값의 주소가 달라졌기 때문에 의미가 없다. 그래서 참조 값(Reference Type)은 저장하거나 보낼 수 없고 값(Value Type)만 저장하거나 보낼 수 있다. Serializer JSON 파이썬에서 직렬화, 역직렬화 방법은 다음과 같다. 파이썬 프로그래밍을 하면 array, dict 타입의 데이터를 파일로 저장하거나 불러올 때 아래의 함수(직렬화 및 역직렬화)를 자주 사용하게 된다. 스키마가 따로 존재하지 않아서 데이터를 보낼 때 전부 보내야하는 부담이 있다. # 직렬화 json_value =..
2021.04.09