Repolode
apache

apache/thrift

다양한 프로그래밍 언어에서 호환되는 클라이언트와 서버를 생성하는 코드 생성기를 갖춘 언어 독립적인 RPC 프레임워크입니다.

대체할 수 있는 제품:gRPCProtocol Buffers

스타
10,958
포크
4,116
열린 이슈
29
마지막 커밋
16시간 전

어떤 프로젝트인가요?

Apache Thrift는 지점 간 원격 프로시저 호출을 위한 경량 소프트웨어 스택입니다. 데이터 전송, 데이터 직렬화, 애플리케이션 수준 처리에 필요한 추상화와 함께, 간단한 인터페이스 정의 언어를 입력받아 여러 언어의 클라이언트 및 서버 코드를 생성하는 코드 생성기를 제공합니다.

Thrift는 28개 프로그래밍 언어를 지원하므로 서로 다른 언어로 작성된 서비스끼리 데이터를 주고받고 서로의 메서드를 호출할 수 있습니다. 서버를 업그레이드해도 기존 클라이언트가 동작하도록 설계되었으며, 최신 클라이언트가 구버전 서버와 통신할 수도 있어 API 버전 관리가 수월합니다.

컴파일러는 C++로 구현되어 있으며, 저장소에는 언어별 라이브러리, 언어 간 테스트를 포함한 테스트 스위트, 튜토리얼이 들어 있습니다. 빌드는 Autotools 또는 Docker를 사용해 진행합니다.

핵심 기능

  • 01간단한 정의 언어를 바탕으로 클라이언트와 서버 코드 생성
  • 0228개 프로그래밍 언어 지원
  • 03플러그형 데이터 전송 및 직렬화 계층
  • 04동시에 전환하지 않는 버전 업그레이드 간 호환성을 고려한 설계
  • 05언어 간 테스트 스위트 포함

활용 사례

  • 서로 다른 언어로 작성되어 상호 호출이 필요한 마이크로서비스 구축
  • 업그레이드 중에도 기존 클라이언트를 계속 지원해야 하는 안정적인 RPC API 제공
  • C++ 백엔드와 다른 언어로 작성된 클라이언트 간 데이터 구조 공유

빠른 시작

  1. 1

    configure 스크립트를 생성합니다(소스 저장소에서 빌드할 때만 필요하며, tarball에서는 필요하지 않음)

    ./bootstrap.sh
  2. 2

    빌드를 구성합니다. Boost가 표준 위치가 아닌 곳에 있다면 --with-boost를 사용합니다

    ./configure
  3. 3

    Thrift를 빌드합니다

    make
  4. 4

    슈퍼유저 권한으로 Thrift를 설치합니다

    make install

사용 전 알아둘 점

  • 소스에서 빌드하려면 autotools와 Boost 등의 필수 구성 요소가 필요합니다. 설치 문서에 나와 있지만 오래된 내용일 수 있습니다.
  • Java, Ruby, PHP와 같은 일부 언어 라이브러리는 각 언어의 빌드 도구를 사용해 수동으로 설치해야 합니다.

토픽

자주 묻는 질문

thrift은(는) 무엇인가요?
다양한 프로그래밍 언어에서 호환되는 클라이언트와 서버를 생성하는 코드 생성기를 갖춘 언어 독립적인 RPC 프레임워크입니다. Apache Thrift는 지점 간 원격 프로시저 호출을 위한 경량 소프트웨어 스택입니다. 데이터 전송, 데이터 직렬화, 애플리케이션 수준 처리에 필요한 추상화와 함께, 간단한 인터페이스 정의 언어를 입력받아 여러 언어의 클라이언트 및 서버 코드를 생성하는 코드 생성기를 제공합니다.
thrift은(는) 무료로 사용할 수 있나요? 라이선스는 무엇인가요?
thrift은(는) Apache-2.0 라이선스의 오픈소스입니다. 상업용 제품에 사용하기 전에 라이선스 조건을 확인하세요.
thrift은(는) 아직 유지보수되고 있나요?
활발히 유지보수 중. thrift의 마지막 커밋은 2026년 10월 21일입니다.
thrift은(는) 어디에 사용할 수 있나요?
서로 다른 언어로 작성되어 상호 호출이 필요한 마이크로서비스 구축 업그레이드 중에도 기존 클라이언트를 계속 지원해야 하는 안정적인 RPC API 제공 C++ 백엔드와 다른 언어로 작성된 클라이언트 간 데이터 구조 공유
thrift는 어떻게 설치하나요?
configure 스크립트를 생성합니다(소스 저장소에서 빌드할 때만 필요하며, tarball에서는 필요하지 않음): ./bootstrap.sh 빌드를 구성합니다. Boost가 표준 위치가 아닌 곳에 있다면 --with-boost를 사용합니다: ./configure Thrift를 빌드합니다: make 슈퍼유저 권한으로 Thrift를 설치합니다: make install
thrift은(는) 어디서 받을 수 있나요?
소스 코드와 설치 방법은 GitHub에 있습니다: https://github.com/apache/thrift

요약은 프로젝트 README를 바탕으로 AI가 작성했습니다. GitHub 통계는 매일 갱신됩니다.

관련 프로젝트