Категории программ

Новые программы

Apache Thrift

25 Червня, 2014 0

Apache Thrift (англ. Бережливость) – язык описания интерфейсов, который используется для определения и создания служб под разные языки программирования. Является фреймворком к удалённому вызову процедур (RPC). Разработан компанией Facebook в качестве масштабируемого кроссязыкового сервиса по разработке.

Apache Thrift сочетает в себе программный конвейер с движком генерации кода для разработки служб, в той или иной степени эффективно и легко работающих между такими языками как C#, C++, Cappuccino, Cocoa, Delphi, Erlang, Go, Haskell, Java, OCaml (Objective Caml), Perl, PHP, Python, Ruby и Smalltalk. Проще говоря, Apache Thrift является двоичным протоколом связи.

Программный конвейер, состоит из шести уровней, для работы с клиентской и серверной частью. Верхний уровень составляет сгенерированный код описания Apache Thrift. Службы генерируют из него клиентский и серверный код. В отличие от встроенных типов, созданная структура данных возвращается как результат в сгенерированном коде. Уровни протокола и транспортировки являются частью runtime-библиотеки. В Apache Thrift возможно выбрать службы и изменить протокол и транспортировку без перекомпиляции кода. Помимо клиентской части Thrift включает в себя серверную инфраструктуру для связи протокола и транспортировки в blocking, non-blocking и multi-threaded серверах. Основа уровня Ввода/Вывода по-разному реализована для различных языков.

С апреля 2007 разрабатывается как Open Source проект компанией Apache Software Foundation.

Поддерживаемые протоколы Apache Thrift

Подходит для парсинга на скриптовых языках.

Поддерживаемые транспортировщики Apache Thrift

Он отправляет данные во фреймах, где каждому фрейму предшествует длина информации.

Реализация Java использует простой встроенный ByteArrayOutputStream.

Используется в сочетании с другим транспортом. Отсутствует в реализации Java.

Поддерживаемые сервера Apache Thrift

На этих серверах должен использоваться TFramedTransport.

Полезен для тестирования.

Использующие Apache Thrift сайты

Преимущества Apache Thrift

Не нуждается в фреймворке для кода. Не использует XML-конфигурацию.

Например, Java использует ArrayList<String>. C++ использует std::vector<std::string>.

Они могут быть изменены независимо друг от друга.

двоичный, дружественный к HTTP и компактный двоичный.

Apache Thrift не требует централизованной и явный механизм, как major-version/minor-version. Слабосвязанные группы могут свободно переходить в RPC вызовы.

Нет несовместимых лицензий на программное обеспечение.

Apache Thrift

Ссылки

Сайт Apache Thrift

Скачать Apache Thrift

Компоненты и библиотеки , Прочие языки , Разработчику , Средства разработки

Оставить комментарий