Cela pourrait avoir un tir dans le noir: nous avons un format de paquet de fil qui est en conception et en flux. Existe-t-il un moyen flexible de spécifier et d'analyser le flux entrant au lieu de le mal à la codage? De préférence un langage agnostique ... mais pas nécessairement. S'il y a une bonne raison de ne pas le faire, s'il vous plaît vous éclairer aussi. P>
merci p>
Oliver P>
3 Réponses :
Il y a une merveilleuse bibliothèque Python appelée construire . C'est de loin le moyen le plus simple de commencer rapidement. P>
S'il est plus important d'être le langage agnostique, vous pouvez limiter votre protocole de fil à ASN.1 BER < / a>, car il est généralement possible de trouver une bibliothèque de codeur / décodeur pour ceux-ci dans une langue. Par exemple, il y a codec en java et Il existe également des approches plus récentes et plus légères ASN.1 telles que Apache Thrift et Buffs de protocole Google . P>
Google's Les tampons de protocole vous permettent de spécifier ce que vous voulez envoyer, puis il génère l'analyse. et code sériialisant pour vous. P>
tharift est similaire, mais fournit également un cadre IPC. Il intègre les trucs d'analyse et de panneaux dans un paquet. P>
Je n'ai pas beaucoup utilisé ces bibliothèques, mais les deux sont bien documentés, langues agnostiques et sont publiées sous une licence permissive - je suis sûr qu'au moins l'un d'entre eux conviendrait à votre application. P>
erlang et Haskell a tous deux une excellente correspondance de motifs binaires. Mais pour vos besoins (étant donné que vous êtes sur le JVM), pourquoi pas Écrivez le connecteur à Scala ? P>
Pour éviter d'assumer: besoin i> un format de paquet de fil personnalisé?
Dupliqué possible de Nommez-moi un analyseur binaire. Un analyseur pour les données binaires
@Inerdial: décision d'équipe, il est trop tard pour revenir à la planche à dessin maintenant.