IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)

Vous êtes nouveau sur Developpez.com ? Créez votre compte ou connectez-vous afin de pouvoir participer !

Vous devez avoir un compte Developpez.com et être connecté pour pouvoir participer aux discussions.

Vous n'avez pas encore de compte Developpez.com ? Créez-en un en quelques instants, c'est entièrement gratuit !

Si vous disposez déjà d'un compte et qu'il est bien activé, connectez-vous à l'aide du formulaire ci-dessous.

Identifiez-vous
Identifiant
Mot de passe
Mot de passe oublié ?
Créer un compte

L'inscription est gratuite et ne vous prendra que quelques instants !

Je m'inscris !

Sortie de Cutelyst 1.3
Le framework Web pour Qt gère maintenant le protocole FastCGI et améliore fortement sa performance

Le , par dourouc05

11PARTAGES

4  0 
Sortie de Cutelyst 1.3
le framework Web pour Qt gère maintenant le protocole FastCGI et améliore fortement sa performance

Cutelyst est un framework Web qui se base sur Qt en C++. Ses concepts sont très proches de ceux utilisés par Qt pour les interfaces graphiques, mais du côté Web. La version 1.3 apporte deux améliorations importantes. La première concerne la validation des entrées : adresse électronique, adresse IP, fichier JSON, date, etc. Les validateurs utilisés peuvent être partagées entre les différents fils d’exécution de l’application : il n’en faut qu’une instance pour servir un nombre illimité de clients.

Code qt : Sélectionner tout
1
2
3
4
static Validator v({ new ValidatorRequired(QStringLiteral("username") }); 
if (v.validate(c,Validator::FillStashOnError)) {  
    // … 
}


La deuxième amélioration concerne plutôt la performance. Jusqu’à la version précédente, Cutelyst ne communiquait avec le serveur Web (Apache, NGINX, etc.) que par uWSGI. Cependant, le protocole uWSGI a un défaut de conception relativement gênant : la communication n’est pas gardée entre le serveur Web et l’application ; ainsi, lorsque le client effectue une nouvelle requête, la connexion HTTP est conservée jusqu’au serveur Web, mais pas jusqu’à l’application. FastCGI, au contraire, n’a pas cette limitation et est accepté par bon nombre de serveurs Web.

L’impact est important : là où uWSGI ne pouvait gérer que 30 000 requêtes par seconde avec NGINX, la simple transition vers FastCGI permet de gérer jusque 42 000 requêtes par seconde. Après d’autres optimisations de plus petite ampleur (comme la manière de gérer les en-têtes HTTP dans Cutelyst), le total monte même à 80 000 requêtes par seconde.

Source : Cutelyst 1.3.0 released.

Voir le code source.
Vous avez lu gratuitement 1 articles depuis plus d'un an.
Soutenez le club developpez.com en souscrivant un abonnement pour que nous puissions continuer à vous proposer des publications.

Une erreur dans cette actualité ? Signalez-nous-la !