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.
Yeah !
Un mini-projet collaboratif pour bien illustrer la chose sous toutes ces coutures ?
Qu’on mettrai ici :
https://github.com/IndexErrorCoders
un truc fun ce serait sympa, pas un truc qui assomme hein ?!
Des idées ? des volontaires ?
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 !
ben alors on est deux déjà ;-)
Il y a déjà un repo pour ça : https://github.com/crossbario/crossbardemo/. Toutes les fonctionnalités de crossbar sont illustrées par du code. Mais ça manque d’un README pour chacune je trouve.
Ces vieux, ils sont toujours trop occupés à tout et n’importe quoi ;P
https://github.com/crossbario/crossbarexamples/tree/master/demos
J’ai vu ça en l’installant par erreur dans un virtualenv py3 au lieu de pypy2 y’a à peine 48h, pour un projet tout frais.
C’est vraiment une bonne surprise !
par contre je crois qu’ils ont déplacé le repo des démos : https://github.com/crossbario/crossbarexamples
Ah oui effectivement.
Salut,
Juste une question, comment ça scale crossbar ?
genre pour une app microservices un peu trapue ça suit ou moyen ?
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.
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 !
Oh yeah !
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 !
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
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.
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 ?
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:
Et les onTruc qui sont des coroutines donc du @coroutine ou asyncdef + yield from ou await.
Le reste est pareil.