Nous utilisons Consul v1.11.1 KV pour stocker des données principalement lues (environ 50 octets par clé). Je fais des tests de performance sur Consul get récemment. D'abord, j'utilise un seul serveur (8 cœurs de processeur, 2,4 GHz ; 16 Go de RAM ; 300 G SSD)

wrk -t8 -d30 -c200 http:8500/v1/kv/aa Exécution du test 30s @ http://10.190.4.251:8500/v1/kv/aa

8 fils et 200 connexions

Statistiques du fil Avg Stdev Max +/- Stdev

Latence 2,86 ms 2,99 ms 55,02 ms 88,33 %

Req/Sec 10.71k 2.00k 19.79k 69.19% 2565410 requêtes en 30.09s, 0.93GB lecture

Requêtes/s : 85 251,41

Transfert/s : 31,79 Mo de processeur max. à 700 %

Ensuite, je crée un cluster avec un autre serveur de configuration identique (8 cœurs de processeur, 2,4 GHz ; 16 Go de RAM ; 300 G SSD) et je crée un haproxy pour l'équilibrage de charge. Entrez la description de l'image ici

à ce moment max cpu 300% par serveur. le résultat Running 2m test @ http://10.190.5.152:8999/v1/kv/aa 8 threads et 200 connexions Thread Stats Avg Stdev Max +/- Stdev Latency 5.38ms 1.72ms 212.79ms 94.57% Req/Sec 4.68k 388.44 7.27k 84.26% 4474792 requêtes en 2.00m, 1.63GB lecture Requêtes/sec : 37260.15 Transfert/sec : 13.89MB j'augmente les connexions mais trouve une réponse non-2xx.

Exécution d'un test de 2 m sur http://10.190.5.152:8999/v1/kv/aa 8 threads et 250 connexions Statistiques de threads Avg Stdev Max +/- Stdev Latency 6,64 ms 1,95 ms 213,80 ms 93,03 % Req/Sec 4,70 k 466,78 10,65 k 82,20 % 4485786 requêtes en 2,00 m, 1,63 Go de lecture Erreurs de socket : connexion 0, lecture 129, écriture 0, temporisation 0 Réponses non 2xx ou 3xx : 64 requêtes/s : 37353,78

Meilleures performances d'un serveur unique qu'un cluster. Je ne sais pas pourquoi ? Est-ce que je l'utilise mal ?

no answer