Les demandes Http sont réparties à 50/50 entre deux serveurs. Les serveurs fonctionnent sous FreeBSD 9.2, leurs configurations matérielles, logicielles et applicatives sont absolument identiques. Mais l'un des serveurs a une charge CPU multipliée par deux. Pendant les pics de trafic, ce fait cause des problèmes de LA sur le serveur "bogué".
Les deux serveurs sont configurés en nginx+php-fpm+redis+memcached+mysql et n'ont rien d'autre. Il n'y a pas de crons en cours d'exécution, etc.
CPU: 24.9% user, 0.0% nice, 8.1% system, 0.0% interrupt, 66.9% idle
CPU: 12.7% user, 0.0% nice, 3.4% system, 0.0% interrupt, 83.9% idle
vmstat 1
pour un serveur bogué
procs memory page disk faults cpu
r b w avm fre flt re pi po fr sr mf0 in sy cs us sy id
44 0 0 78511M 3775M 92 0 0 0 93 9 0 27 82 37 12 5 83
14 0 0 78539M 3768M 3612 0 0 0 2320 0 94 4019 290766 59170 32 42 26
10 0 0 78544M 3763M 1019 0 0 0 544 0 127 4054 267760 36825 26 8 67
11 0 0 78540M 3758M 2156 0 0 0 2106 0 218 4045 272843 37923 28 8 64
9 0 0 78544M 3759M 601 0 0 0 1412 0 55 4067 279558 37887 26 9 65
9 0 0 78548M 3753M 1835 0 0 0 414 0 79 4042 273963 37264 26 9 65
11 0 0 78548M 3754M 1036 0 0 0 2934 0 199 4078 262876 36150 25 7 68
9 0 0 78548M 3759M 295 0 0 0 2408 0 44 3781 249391 32801 25 7 68
15 1 0 78548M 3758M 2158 0 0 0 2628 0 100 3816 250708 33943 25 7 68
12 0 0 78552M 3754M 1506 0 0 0 1637 0 113 3965 269543 36864 28 8 64
9 0 0 78564M 3746M 2288 0 0 0 620 0 102 3974 256959 34928 26 8 67
13 0 0 78568M 3745M 689 0 0 0 939 0 75 3992 272804 36572 25 9 66
13 0 0 78568M 3744M 239 0 0 0 2084 0 44 4040 273036 36631 26 8 65
8 0 0 78479M 3752M 2279 0 0 0 5177 0 128 3955 263155 36118 27 9 64
9 0 0 78475M 3752M 496 6 0 0 1085 0 172 3954 256552 34906 25 8 67
15 0 0 78475M 3754M 263 0 0 0 2016 0 178 3870 254864 35432 25 8 67
vmstat 1
pour un bon serveur
procs memory page disk faults cpu
r b w avm fre flt re pi po fr sr mf0 in sy cs us sy id
1 0 6 78873M 4870M 153 2 0 0 54 61 0 48 48 136 6 1 93
6 0 6 78865M 4871M 755 0 0 0 1839 0 126 3588 254715 30931 13 3 84
7 0 6 78873M 4868M 715 0 0 0 3750 0 76 3453 240474 28698 11 4 85
6 0 6 78869M 4867M 404 0 0 0 1793 0 165 3419 232270 27453 12 3 85
5 0 6 78877M 4867M 213 0 0 0 845 0 276 3793 261560 31747 13 3 84
4 0 6 78877M 4866M 602 0 0 0 830 0 157 3539 249173 29895 12 4 84
5 1 6 78881M 4858M 1762 0 0 0 1639 0 93 3586 256812 30538 12 4 84
4 0 6 78890M 4851M 1757 0 0 0 90059 0 88 3651 267225 32082 13 3 83
4 0 6 78890M 4845M 836 0 0 0 12182 0 202 3822 259947 31564 12 4 85
5 0 6 78894M 4842M 726 0 0 0 906 0 314 3665 247476 30474 12 3 85
5 0 6 78898M 4832M 638 0 0 0 288 0 258 3698 252603 31849 13 3 84
5 0 6 78902M 4818M 1231 0 0 0 1992 0 460 3815 247440 31429 12 3 84
9 0 6 78902M 4808M 23 0 0 0 152 0 596 4121 252113 31974 12 3 85
6 0 6 78902M 4804M 1050 1 0 0 885 0 206 3810 265230 32513 13 4 83
Nous pouvons voir quelque chose d'intéressant dans procs.r
y proces.w
colonnes. Les serveurs bogués n'ont pas w
de processus, mais il a un plus grand nombre de r
processus. Comment puis-je interpréter cela ? Quelles mesures dois-je obtenir pour comprendre ce qui se passe ?
0 votes
Êtes-vous sûr que la charge est répartie uniformément entre les deux serveurs ? Vous pouvez vérifier dans les journaux de nginx qu'ils reçoivent tous deux le même nombre de demandes.