J'ai fait le test de performance de PB avec nombre d'autres formats de données (xml, json, par défaut sérialisation d'un objet, de hesse, un propriétaire) et les bibliothèques (jaxb, rapide infoset, écrite à la main) pour la liaison de données de la tâche (à la fois en lecture et en écriture), mais épargne format(s) n'a pas été inclus. Performance pour les formats avec de multiples convertisseurs (comme xml) à très haute variance, du très lent au joli-sacré-rapide. La corrélation entre les revendications des auteurs et la perception de la performance a été plutôt faible. En particulier pour les paquets qui ont fait les plus folles prétentions.
Pour ce qu'il vaut, j'ai trouvé le PB de la performance peu plus de hype (généralement pas par ses auteurs, mais d'autres qui ne sais qui l'a écrit). Avec les paramètres par défaut, il n'a pas battu le plus rapide xml textuel alternatif. Avec le mode optimisé (pourquoi ce n'est pas par défaut?), il était un peu plus rapide, comparables à celles de la manière la plus rapide JSON paquet. Hesse a été plutôt rapide, textuelles json aussi. Properietary format binaire (pas de nom ici, il a été interne de l'entreprise) a été le plus lent. Java sérialisation d'un objet a été rapide pour les messages les plus grands, l'est moins pour les petits objets (c'est à dire de haut fixe par opération noverhead).
Avec PB de taille de message est compact, mais compte tenu de tous les compromis que vous avez à faire (les données ne sont pas auto-descriptif: si vous perdez le schéma, vous perdez des données; il y a des indices de cours, et les types de valeur, mais de ce que vous avez désosser retour à des noms de champ si vous voulez), personnellement, je ne choisissez pour des cas d'utilisation spécifiques -- taille-sensible, étroitement couplé système où l'interface/le format n'a jamais (ou très très rarement) des changements.
Mon avis, c'est que (a) la mise en œuvre souvent plus important que la spécification de format de données), (b) de bout en bout, les différences entre les best-of-breed (différents formats) ne sont généralement pas assez grand pour dicter le choix.
Qui est, vous pourriez être mieux fait de choisir le format+API/lib/cadre que vous aimez à l'aide de la plupart (ou a le meilleur outil de soutien), de trouver la meilleure mise en œuvre, et de voir si cela fonctionne assez rapide.
Si (et seulement si!) pas, envisager la meilleure alternative suivante.
ps. Pas sûr de ce que EJB3 ici. Peut-être tout simplement de la sérialisation Java?