43 votes

Thrift vs protocole tampons

J'ai été à l'aide de PB pour un bon moment maintenant, mais, l'Épargne a été constamment à l'arrière de mon esprit.

Les principaux avantages de l'épargne, tel que je le vois sont:

  1. Natif de collections (j'.e, vecteur, ensemble, etc) vs PBs répété, fournissant des fonctionnalités similaires, mais pas tout à fait comme (pas d'itérateurs, à moins que vous creusez dans RepeatedField dont la documentation états "ne devrait pas être nécessaire dans la plupart des cas").
  2. Un décent RPC mise en œuvre prévue, au lieu de simplement les crochets pour brancher votre propre dans.
  3. Plus officiellement les langues prises en charge (PB offre "officielle" de la prise en charge de Java, C++, Python)

Les inconvénients de l'Épargne:

  1. Les RPC de la mise en œuvre de moyens je ne peux pas brancher mon propre (par exemple) de chiffrement/couche d'authentification sur le dessus.
  2. Support de Windows ne semble pas être grand.
  3. Le PB semble définitivement avoir, si ce n'est mieux, plus accessible la documentation.

Neutre:

  • Taille inconnue de .lib/.dll sur Windows (l'Épargne).
  • De grande taille .lib sous Windows (PB, mais elle offre un -lite, qui est beaucoup plus petite).
  • La vitesse de la sagesse, ils semblent être similaires.

Je ne suis pas tout à fait prêt à franchir le pas et de passer à l'Épargne et pourtant, quelqu'un peut-il m'offrir plus d'avantages/inconvénients, ou de raisons d'aller dans un sens ou l'autre?

Merci!

18voto

Comme je l'ai dit que "Plus la différence de l'Épargne vs Protocol Buffers?" sujet :

Se référant à l'Épargne vs Protobuf vs JSON comparaison :

En outre, il existe de nombreuses autres outils disponibles pour ces solutions, qui peut décider. Voici des exemples de Protobuf: Protobuf-wireshark , protobufeditor.

9voto

Martin Källman Points 625

Vous voudrez peut-être d'abord analyser votre besoin:

Avez-vous besoin d'un format protocole-agnostique? Par exemple, voulez-vous implémenter un protocole personnalisé ou avez-vous besoin d'une portabilité à 100%? Dans ce cas, utilisez PB.

Si vous êtes d'accord avec le protocole par défaut de Thrift et que vous avez besoin d' un protocole pour commencer, il est évident que vous utiliserez Thrift.

J'espère que cela t'aides.

8voto

alexras Points 157

La raison principale de notre projet de rester avec les tampons de protocole Thrift over était que les tampons de protocole ne généraient pas automatiquement un serveur RPC complet, et que les solutions existantes pour PB semblaient toutes assez instables. Juste mon 0,02 $.

0voto

John Zwinck Points 43636

Vous devez spécifier vos cas d'utilisation en détail. Sinon c'est un "Quel est le meilleur, une voiture ou un camion?" question.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X