Sortie de Cutelyst 1.7

Cutelyst est un framework Web écrit en C++ et utilisant Qt. L’un de ses grands avantages par rapport à la concurrence est probablement sa performance, il dépasse allègrement les plus connus et les plus utilisés.

La version 1.7 vient de sortir. L’un de ses apports est une implémentation de l’API HTML5 Web Sockets. Son API est très proche de l’implémentation de Qt 5 (QWebSocket), mais avec un degré de contrôle nettement plus fin. Par exemple, la première chose à faire est d’initialiser le protocole :

c->response->webSocketHandshake()

Ensuite, on peut écrire une application à l’aide de signaux et slots : ping/pong pour garder la connexion active, envoi et réception de trames binaires et messages textuels. Par exemple, pour simplement renvoyer le message textuel reçu :

connect(req, &Request::webSocketTextMessage, [=] (const QString &msg) {
  qDebug() << "Got text msg" << msg;
  response->webSocketTextMessage(msg);
});

Cette implémentation est légèrement plus rapide que celle de Qt, utilise moins de mémoire, mais passe néanmoins tous les tests Autobahn. La seule limitation est que les échanges ne peuvent pas être compressés.

Un serveur Cutelyst peut aussi maintenant être lancé par systemd lorsqu’un paquet est reçu. Ce mode de fonctionnement est extrêmement efficace : le temps de réaction est simplement doublé par rapport au cas où Cutelyst est déjà lancé.

Source : Cutelyst 1.7.0 released! WebSocket support added.

Advertisements

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s