Thrift vs Protocol buffers

Я уже давно использую PB, но, судя по всему, Thrift постоянно был в моем сознании.

Основные преимущества бережливости, как я вижу:

  • Собственные коллекции (т.е. вектор, множество и т.д.) против ПБ повторяются, обеспечивая функциональность, похожую на, но не совсем похожую (нет итераторов, если вы не вникнете в RepeatedField, который в документации не указывается в большинстве случаев).
  • Приличная реализация RPC предоставлена, а не просто перехватывает ваши собственные.
  • Более официально поддерживаемые языки (PB предлагает официальную поддержку Java, С++, Python)

Против сундука:

  • Реализация RPC означает, что я не могу подключить собственный (например) уровень шифрования/аутентификации сверху.
  • Поддержка Windows не кажется отличной.
  • PB определенно имеет, если не лучшую, более доступную документацию.

Нейтральные:

  • Неизвестный размер .lib/.dll для Windows (Thrift).
  • Большой размер .lib для Windows (PB, но он действительно предлагает -lite, который значительно меньше).
  • Скорость мудрая, оба они кажутся похожими.

Я не совсем готов принять решение и переключиться на Thrift, может ли кто-нибудь предложить мне больше плюсов/минусов или причин идти так или иначе?

Спасибо!

41
27 нояб. '10 в 22:11
источник поделиться
4 ответов

Как я сказал как "Самые большие различия в Thrift vs Protocol Buffers?" тема:

Ссылаясь на Сравнение Thrift vs Protobuf vs JSON:

Кроме того, для этих решений доступно множество интересных дополнительных инструментов, которые могут решить. Вот примеры для Protobuf: Protobuf-wireshark, protobufeditor.

17
27 авг. '11 в 21:31
источник

Возможно, вам захочется сначала проанализировать вашу потребность:

Вам нужен протокол-агностик? Например, вы хотите реализовать собственный протокол или 100% -ную переносимость? В таком случае используйте PB.

Если у вас все в порядке с протоколом Thrift по умолчанию, и для начала вам нужен протокол, обязательно используйте Thrift.

Надеюсь, что это поможет.

9
15 янв. '11 в 16:56
источник

Основной причиной нашего проекта придерживаться Thrift над протокольными буферами было то, что буферы протокола не генерируют автоматически RPC-сервер, а существующие решения для PB, похоже, все нестабильны. Только мои $0,02.

7
10 янв. '11 в 22:56
источник

Вам нужно подробно указать свой пример использования. Иначе это "Что лучше, автомобиль или грузовик?" вопрос.

0
28 нояб. '10 в 3:44
источник

Посмотрите другие вопросы по меткам или Задайте вопрос