H2o: Pourquoi l'eau est-elle si rapide ?

Créé le 10 nov. 2017  ·  6Commentaires  ·  Source: h2o/h2o

J'apprends pourquoi l'eau est rapide.

  1. Qu'est-ce que "Contrairement à la plupart des analyseurs, il est sans état et n'alloue pas de mémoire par lui-même. Tout ce qu'il fait est d'accepter le pointeur vers le tampon et la structure de sortie, et configure les pointeurs dans cette dernière pour pointer vers les parties nécessaires du tampon." moyenne?

Quand je lis ppt ou lis "lis-moi" de git, il dit "rapide" car c'est "Contrairement à la plupart des analyseurs, il est sans état et n'alloue pas de mémoire par lui-même. Tout ce qu'il fait est d'accepter le pointeur vers le tampon et la structure de sortie, et les configurations les pointeurs dans ce dernier pour pointer vers les parties nécessaires du tampon."
Je ne comprends pas ce que cela signifie. Je vous serais reconnaissant de m'expliquer en détail.

J'apprécierais vraiment que vous me le fassiez savoir.

Commentaire le plus utile

mes résultats de référence de siège sur une instance Uplcoud 2 Go utilisant des connexions Lan

Commande -- siege -v -d1 -c250 -i -f siege.txt

siege.txt a 65 URL (toutes mises en cache et servies par le serveur lui-même)

h2o

Transactions : 12766 appels
Disponibilité : 99,86 %
Temps écoulé : 35,62 secondes
Données transférées : 580,61 Mo
Temps de réponse : 0,67 s
Taux de transaction : 358,39 trans/sec
Débit : 16,30 Mo/s
Concurrence : 240,01
Transactions réussies : 12766
Transactions échouées : 18
Transaction la plus longue : 4,64
Transaction la plus courte : 0,00

nginx

Transactions : 9909 appels
Disponibilité : 99,77 %
Temps écoulé : 34,35 secondes
Données transférées : 455,19 Mo
Temps de réponse : 0,84 s
Taux de transaction : 288,47 trans/sec
Débit : 13,25 Mo/s
Concurrence : 242,80
Transactions réussies : 9905
Transactions échouées : 23
Transaction la plus longue : 8,84
Transaction la plus courte : 0,00

Caddie

Transactions : 12145 appels
Disponibilité : 99,44 %
Temps écoulé : 35,07 secondes
Données transférées : 635,66 Mo
Temps de réponse : 0,69 s
Taux de transaction : 346,31 trans/sec
Débit : 18,13 Mo/s
Concurrence : 239,72
Transactions réussies : 11813
Transactions échouées : 69
Transaction la plus longue : 1,97
Transaction la plus courte : 0,00

Tous les 6 commentaires

mes résultats de référence de siège sur une instance Uplcoud 2 Go utilisant des connexions Lan

Commande -- siege -v -d1 -c250 -i -f siege.txt

siege.txt a 65 URL (toutes mises en cache et servies par le serveur lui-même)

h2o

Transactions : 12766 appels
Disponibilité : 99,86 %
Temps écoulé : 35,62 secondes
Données transférées : 580,61 Mo
Temps de réponse : 0,67 s
Taux de transaction : 358,39 trans/sec
Débit : 16,30 Mo/s
Concurrence : 240,01
Transactions réussies : 12766
Transactions échouées : 18
Transaction la plus longue : 4,64
Transaction la plus courte : 0,00

nginx

Transactions : 9909 appels
Disponibilité : 99,77 %
Temps écoulé : 34,35 secondes
Données transférées : 455,19 Mo
Temps de réponse : 0,84 s
Taux de transaction : 288,47 trans/sec
Débit : 13,25 Mo/s
Concurrence : 242,80
Transactions réussies : 9905
Transactions échouées : 23
Transaction la plus longue : 8,84
Transaction la plus courte : 0,00

Caddie

Transactions : 12145 appels
Disponibilité : 99,44 %
Temps écoulé : 35,07 secondes
Données transférées : 635,66 Mo
Temps de réponse : 0,69 s
Taux de transaction : 346,31 trans/sec
Débit : 18,13 Mo/s
Concurrence : 239,72
Transactions réussies : 11813
Transactions échouées : 69
Transaction la plus longue : 1,97
Transaction la plus courte : 0,00

Quand je lis ppt ou lis "lis-moi" de git, il dit "rapide" car c'est "Contrairement à la plupart des analyseurs, il est sans état et n'alloue pas de mémoire par lui-même. Tout ce qu'il fait est d'accepter le pointeur vers le tampon et la structure de sortie, et les configurations les pointeurs dans ce dernier pour pointer vers les parties nécessaires du tampon."
Je ne comprends pas ce que cela signifie. Je vous serais reconnaissant de m'expliquer en détail.

Cela signifie que lorsque H2O reçoit une requête, l'analyseur HTTP lui-même n'alloue aucune mémoire en dehors de celle nécessaire pour recevoir la requête. L'analyseur HTTP/1 utilisé par H2O est picohttpparser, il possède son propre référentiel : https://github.com/h2o/picohttpparser . La source est assez petite et contient de petits tests https://github.com/h2o/picohttpparser/blob/master/test.c qui démontrent son utilisation.

@sudarsha Voici les résultats pour HTTP/2 ?

@xm74 ne semble pas, car _siege_ ne prend pas encore en charge HTTP/2.

Siege ne le supporte pas. h2load a, mais je n'ai pas eu le temps de le configurer.

@deweerdt
Grâce à cela, je suis devenu une chance de comprendre un peu plus.
Merci beaucoup.
J'ai une question.
Je sais que "picoparser" est le rôle d'analyse des messages http.
Y a-t-il un magasin ?
En ppt, il s'agit d'un tampon. Quel tampon est le tampon ?
Est-ce un tampon sur le serveur Web ? Est-ce un tampon dans picoparser?

Et « apatride » signifie vitesse ?
Veuillez expliquer en détail.

Je n'ai pas assez d'anglais. Je suis désolé si cela semblait maladroit à ma question.

Cette page vous a été utile?
0 / 5 - 0 notes

Questions connexes

utrenkner picture utrenkner  ·  7Commentaires

kazuho picture kazuho  ·  7Commentaires

fetus-hina picture fetus-hina  ·  4Commentaires

paulpref picture paulpref  ·  5Commentaires

daniel-lucio picture daniel-lucio  ·  5Commentaires