Repolode
apache

apache/thrift

Независимый от языка RPC-фреймворк с генератором кода для создания совместимых клиентов и серверов на множестве языков программирования.

Open source альтернатива:gRPCProtocol Buffers

Звёзды
10,958
Форки
4,116
Открытые issues
29
Последний коммит
15 часов назад

Что это?

Apache Thrift — это лёгкий программный стек для удалённого вызова процедур между двумя узлами. Он предоставляет абстракции для передачи и сериализации данных, а также обработки на уровне приложения. Генератор кода преобразует простой язык описания интерфейсов в код клиентов и серверов на множестве языков.

Thrift поддерживает 28 языков программирования, поэтому сервисы, написанные на разных языках, могут обмениваться данными и вызывать методы друг друга. Фреймворк спроектирован так, чтобы обновление сервера не нарушало работу старых клиентов, а новые клиенты могли взаимодействовать со старыми серверами. Это упрощает управление версиями API.

Компилятор написан на C++. В репозитории есть библиотеки для разных языков, тестовые наборы с межъязыковыми тестами и руководство. Сборка выполняется с помощью Autotools или Docker.

Ключевые возможности

  • 01Генерация кода клиентов и серверов на основе простого языка описания
  • 02Поддержка 28 языков программирования
  • 03Подключаемые уровни передачи и сериализации данных
  • 04Совместимость при поэтапном обновлении версий
  • 05В комплекте есть тестовый набор для проверки взаимодействия между языками

Сценарии использования

  • Создание микросервисов на разных языках, которым нужно взаимодействовать друг с другом
  • Предоставление стабильного RPC API, которое должно обслуживать старых клиентов во время обновлений
  • Общий доступ к структурам данных для C++-бэкенда и клиентов на других языках

Быстрый старт

  1. 1

    Сгенерируйте скрипты configure (это нужно только при сборке из репозитория исходного кода, но не из tarball)

    ./bootstrap.sh
  2. 2

    Настройте сборку; используйте --with-boost, если 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 — 21 окт. 2026 г..
Для чего можно использовать thrift?
Создание микросервисов на разных языках, которым нужно взаимодействовать друг с другом Предоставление стабильного RPC API, которое должно обслуживать старых клиентов во время обновлений Общий доступ к структурам данных для C++-бэкенда и клиентов на других языках
Как установить thrift?
Сгенерируйте скрипты configure (это нужно только при сборке из репозитория исходного кода, но не из tarball): ./bootstrap.sh Настройте сборку; используйте --with-boost, если Boost находится в нестандартном месте: ./configure Соберите Thrift: make Установите Thrift с правами суперпользователя: make install
Где скачать thrift?
Исходный код и инструкции по установке — на GitHub: https://github.com/apache/thrift

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

Набор из более чем 30 утилит для Windows, которые помогают настроить рабочий стол и ускорить повседневные задачи — от раскладки окон до переназначения клавиш.

139,6 тыс.8,6 тыс.CMITОбновлён 5 часов назад