Nouvelle release de crossbar : support de Python 3 ! 18


L’équipe de Tavendo est à l’écoute de toutes les critiques de Crossbar et WAMP en général, et je me suis fait un plaisir de leur rapporter toutes les merdes dont vous m’avez fait part.

Cette nouvelle release contient beaucoup de choses qui corrigent ou pallient un paquet de trucs relou dans le routeur Crossbar (et par conséquent la lib client Autobahn) :

  • Support officiel de Python 3. Yes. Yes, yes yes !
  • Le debug a été complètement revu : meilleure console, meilleur login, meilleurs messages d’erreur et meilleur comportement en cas d’exceptions.
  • Un service dédié à l’upload de fichier intégré.
  • Un bridge HTTP complet qui permet d’utiliser Crossbar depuis n’importe quelle app qui peut faire des requêtes HTTP.

Pour la suite, ils travaillent sur la doc, et l’amélioration de l’API. En attendant, on peut pip install crossbar et profiter de ces nouveautés sans avoir à passer par github.

De mon côté j’ai un article sur l’authentification avec Crossbar dans les cartons. ETA dans les 10 prochains jours.

18 thoughts on “Nouvelle release de crossbar : support de Python 3 !

  • boblinux

    Je ne dispose que d’un bien médiocre niveau, mais j’suis volontaire, au pire j’ferais d’la doc en attendant de piger quelque chose !

  • boblinux

    Ces vieux, ils sont toujours trop occupés à tout et n’importe quoi ;P

  • Bag

    Salut,

    Juste une question, comment ça scale crossbar ?

    genre pour une app microservices un peu trapue ça suit ou moyen ?

  • Sam Post author

    6000 messages / s sur un raspberry pi (avec pypy, certes). Ca suit pas mal. Après le router reste un bottle a surveiller, mais pour le moment j’ai aucun service qui dépasse 1000 req / secondes en HTTP même avec 300 000 visiteur / jours.

  • Bag

    Cool !

    Merci de l’info.

    Il y a de grandes chances que nous adoptions cette techno dans les mois qui viennent, en environnement multi langages PHP / Python.

    Je ferais un p’tit retour d’expérience si ca vous dit.

    Keep up the gode work !

  • Nasjo

    Yeah ! je cherche aussi un bon post explicatif sur l’authentification. par exemple avec un REST et des token json. Je suis un peu paumé niveau auth avec crossbar, mais depuis que j’ai réussi a m’en servir, je n’en demors plus. Merci pour cette découverte, c’est grâce a toi !

  • Alex

    Bonjour,

    Je fais un pip install crossbar sous python 3.4 mais il me sort l’erreur : No matching distribution found for twisted>=15.5.0 (from crossbar),

    Vous savez comment résoudre cela ?

    Merci

  • Sam Post author

    Je viens de créer un env avec Python 3.4 et j’ai pip installé crossbar sans souci. Pour t’aider il va donc falloir que tu ailles faire un tour sur indexerror.net où on pourra te poser plus de question.

  • cooltrane

    Salut,

    J’arrive pas mal de temps après la bataille, mais après avoir lu assiduement les posts ici, j’ai enfin un projet qui pourrait tiré parti du WAMP.

    J’aimerais le faire en python3 avec du asyncio, je fouille les exemples du repo github, et même si j’ai bien compris que le gros de la différence est dans les import et qu’après c’est pareil, tous les exemples me semblent en twisted ?

    J’ai loupé un truc ?

  • Sam Post author

    La majorité des exemples sont en twisted en effet. Il y a quelques exemples comme:

    https://github.com/crossbario/crossbarexamples/blob/master/work/yun/client.py

    ou

    https://github.com/crossbario/crossbarexamples/blob/master/work/wamplet_asyncio/wamplet1/wamplet1/component1.py

    Après les différences majeures ce sont:

    from autobahn.asyncio.wamp import ApplicationSession
    from autobahn.asyncio.wamp import ApplicationRunner
    

    Et les onTruc qui sont des coroutines donc du @coroutine ou asyncdef + yield from ou await.

    Le reste est pareil.

Leave a comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <pre> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

Des questions Python sans rapport avec l'article ? Posez-les sur IndexError.