Agora, me deparei com dois artigos de um blog corporativo relacionado a nuvens - um sobre o Kubernetes, e o segundo foi uma tentativa de medir o desempenho usando uma técnica que parecia duvidosa para mim (não é à toa que um spoiler).
Eu também tenho algo a dizer sobre os K8s, mas vamos falar sobre desempenho.
A desconfiança nos resultados foi causada por muitos fatores, mas os principais para mim foram os seguintes: não havia parâmetros para executar os testes, o número de iterações não foi anunciado, como as máquinas escolhidas não foram anunciadas e também não houve configuração detalhada. É duvidoso em geral.
Em geral, uso principalmente o Google Cloud e a AWS (no total, já os encontro há mais de uma dúzia de anos) e não trabalho particularmente com provedores de nuvem domésticos, mas, por coincidência, tenho contas ativas em Selectel, MCS, I. Nuvem e, após este teste, também no Azure.
Felizmente, todas essas plataformas são públicas e, o que quer que eu tente, todos podem ir, repetir e verificar se quiserem.
O resultado de tudo isso foi o pensamento - por que não gastar algumas centenas de rublos
, durante todo o final de semana e realmente não medir todas as seis plataformas e descobrir qual delas oferece o melhor desempenho em termos de custo e em números absolutos com as mesmas configurações e, ao mesmo tempo, comparar fornecedores globais com Russo.
E, como se viu, para esclarecer alguns dos "recursos" na alocação de recursos e lembrar a si e aos outros que está longe de ser sempre e não em todas as plataformas pelo mesmo dinheiro que você pode obter desempenho previsível.
Os resultados não foram fenomenais, mas, na minha opinião, extremamente curiosos.
Para os interessados, peço gato.
Metodologia
Máquinas virtuais
Cada provedor de nuvem é executado seqüencialmente em diferentes zonas de disponibilidade (se houver duas zonas, uma máquina na primeira zona e duas na segunda), três máquinas virtuais com 4 CPUs, 8 GB de RAM e um disco de sistema de 50 GB.
O tipo de processador / instância é o mais novo disponível, se houver uma opção.
Tipo de VM - compartilhado com alocação completa do kernel.
Tipo de disco - SSD de rede com capacidade de remontar para outra VM.
As opções para alocação garantida de IOPS ou máquinas otimizadas para isso não foram usadas, se não estiverem previstas nos termos de uso padrão e for impossível recusá-lo.
O sistema de arquivos padrão é ext4.
Nenhuma configuração manual do sistema foi feita.
Uma série de testes foi lançada em cada uma das máquinas; os valores totais para cada máquina foram calculados em média.
O desempenho total da plataforma é expresso pela média aritmética dos valores médios dos testes para cada uma das máquinas virtuais, mas o desvio padrão também está nas tabelas para os interessados.
Sistema operacional - Ubuntu 16.04 é o último nível de patch disponível.
Cálculo de custos
O cálculo do custo foi feito sem levar em consideração as cobranças de bônus do provedor, sem levar em conta o custo do tráfego, a partir do cálculo do trabalho da máquina virtual por um mês inteiro sem parar.
Além disso, algumas plataformas permitem reduzir significativamente o custo dos recursos através de certas restrições (das quais você pode sobreviver com muita habilidade).
Para a AWS, essas são instâncias Spot; para GCE, são instâncias preemptivas. Com uma arquitetura de aplicativo adequada, eles podem ser usados com êxito sem causar danos, mas com o benefício de uma carteira, ela foi testada por mim pessoalmente e por dezenas de empresas que as usam.
O tipo de disco no Selectel pode ser atribuído à mesma categoria. Apesar do fato de os discos do tipo "Rápido" participarem das principais medidas, ainda existe um "Universal" significativamente mais barato, não brilhante em velocidade, mas adequado para um grande número de tarefas. As opções com seu uso também foram levadas em consideração nos cálculos finais.
Testes
Para executar os testes, este script foi escrito a partir do qual todos os parâmetros de inicialização são visíveis:
Para todos os testes, exceto a CPU Sysbench, mais é melhor.
Os resultados de todos os lançamentos foram coletados em planilhas do Excel para cálculos adicionais.
Bem, eu meio que fiz isso - já lhe disse, agora preciso contar o que aconteceu.
Teste
Um exemplo de máquina não é um teste.
As nuvens costumam ser comparadas aos servidores de ferro convencionais. Não vejo muito sentido nisso, uma vez que a nuvem não é apenas e não tanto o poder de computação direta, mas principalmente o ecossistema, mas, no entanto, acho que muitos ainda estarão interessados nessa comparação. Bem, em geral, algo deve ser comparado. Com algo próximo, famoso e compreensível.
Eu não tinha a máquina de ferro à mão, mas há uma estação de trabalho Dell muito nova, é também um servidor doméstico com um processador conhecido (E5-4650L a 2.60GHz), a quantidade apropriada da memória DDR3 EEC mais rápida (para ser honesto - o mais lento daqueles que geralmente eram compatíveis) e o SmartBuy SSD, adquirido há cerca de 4 anos e recentemente transferido para esta montagem.
Como tudo isso funciona no FreeBSD 11.2, uma virtualochka adequada foi criada usando o bhyve e um teste foi executado lá.
Log de lançamento Run FIO 1 iter: read : io=891652KB, bw=14861KB/s, iops=3715, runt= 60001msec bw (KB /s): min= 116, max=17520, per=100.00%, avg=15449.34, stdev=2990.83 write: io=381908KB, bw=6365.3KB/s, iops=1591, runt= 60001msec bw (KB /s): min= 49, max= 7752, per=100.00%, avg=6620.06, stdev=1290.46 READ: io=891652KB, aggrb=14860KB/s, minb=14860KB/s, maxb=14860KB/s, mint=60001msec, maxt=60001msec WRITE: io=381908KB, aggrb=6365KB/s, minb=6365KB/s, maxb=6365KB/s, mint=60001msec, maxt=60001msec 2 iter: read : io=930228KB, bw=15504KB/s, iops=3875, runt= 60001msec bw (KB /s): min= 5088, max=17144, per=99.98%, avg=15500.61, stdev=2175.23 write: io=398256KB, bw=6637.6KB/s, iops=1659, runt= 60001msec bw (KB /s): min= 2064, max= 7504, per=100.00%, avg=6639.82, stdev=979.69 READ: io=930228KB, aggrb=15503KB/s, minb=15503KB/s, maxb=15503KB/s, mint=60001msec, maxt=60001msec WRITE: io=398256KB, aggrb=6637KB/s, minb=6637KB/s, maxb=6637KB/s, mint=60001msec, maxt=60001msec 3 iter: read : io=886780KB, bw=14779KB/s, iops=3694, runt= 60001msec bw (KB /s): min= 1823, max=17248, per=100.00%, avg=15520.09, stdev=2453.59 write: io=379988KB, bw=6333.3KB/s, iops=1583, runt= 60001msec bw (KB /s): min= 731, max= 7488, per=100.00%, avg=6647.33, stdev=1054.67 READ: io=886780KB, aggrb=14779KB/s, minb=14779KB/s, maxb=14779KB/s, mint=60001msec, maxt=60001msec WRITE: io=379988KB, aggrb=6333KB/s, minb=6333KB/s, maxb=6333KB/s, mint=60001msec, maxt=60001msec Run stress-ng. 1 iter. Stress-NG for 1 CPU: 12227 2 iter. Stress-NG for 1 CPU: 12399 3 iter. Stress-NG for 1 CPU: 12134 1 iter. Stress-NG for 2 CPU: 23812 2 iter. Stress-NG for 2 CPU: 23558 3 iter. Stress-NG for 2 CPU: 21254 1 iter. Stress-NG for 4 CPU: 39495 2 iter. Stress-NG for 4 CPU: 39876 3 iter. Stress-NG for 4 CPU: 42370 1 iter. Sysbench CPU for 1 thread(s): 11.0566s 2 iter. Sysbench CPU for 1 thread(s): 11.0479s 3 iter. Sysbench CPU for 1 thread(s): 11.0451s 1 iter. Sysbench CPU for 2 thread(s): 5.6159s 2 iter. Sysbench CPU for 2 thread(s): 5.5664s 3 iter. Sysbench CPU for 2 thread(s): 5.5407s 1 iter. Sysbench CPU for 4 thread(s): 2.8368s 2 iter. Sysbench CPU for 4 thread(s): 2.8801s 3 iter. Sysbench CPU for 4 thread(s): 2.8244s 1 iter. Sysbench Memory for 1 thread(s): Operations performed: 104857600 (2537704.01 ops/sec) 2 iter. Sysbench Memory for 1 thread(s): Operations performed: 104857600 (2536025.17 ops/sec) 3 iter. Sysbench Memory for 1 thread(s): Operations performed: 104857600 (2472121.34 ops/sec) 1 iter. Sysbench Memory for 2 thread(s): Operations performed: 104857600 (3182800.43 ops/sec) 2 iter. Sysbench Memory for 2 thread(s): Operations performed: 104857600 (3379413.65 ops/sec) 3 iter. Sysbench Memory for 2 thread(s): Operations performed: 104857600 (3306495.59 ops/sec) 1 iter. Sysbench Memory for 4 thread(s): Operations performed: 104857600 (4300089.71 ops/sec) 2 iter. Sysbench Memory for 4 thread(s): Operations performed: 104857600 (4163689.93 ops/sec) 3 iter. Sysbench Memory for 4 thread(s): Operations performed: 104857600 (4163996.47 ops/sec)
Se você traduzir os resultados em uma exibição tabular, obterá o seguinte:
Teste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 3715,00 | 3875,00 | 3694.00 | 3761,33 | 99,00 |
FIO ESCREVA IOPS | 1591,00 | 1659,00 | 1583,00 | 1611,00 | 41,76 |
CPU STRESS-NG 1 | 12227,00 | 12399,00 | 12134,00 | 12253,33 | 134,45 |
CPU STRESS-NG 2 | 23812,00 | 23558,00 | 21254.00 | 22874.67 | 1409,27 |
CPU STRESS-NG 4 | 39495,00 | 39876,00 | 42370,00 | 40580.33 | 1561,56 |
CPU Sysbench para 1 | 11.06 | 11.05 | 11.05 | 11.05 | 0,01 |
Processador Sysbench para 2 | 5,62 | 5,57 | 5,54 | 5,57 | 0,04 |
CPU Sysbench para 4 | 2,84 | 2,88 | 2,82 | 2,85 | 0,03 |
Sysbench mem t 1 | 2537704.01 | 2536025.17 | 2472121.34 | 2515283.51 | 37388.96 |
Sysbench mem t 2 | 3182800.43 | 3379413.65 | 3306495.59 | 3289569.89 | 99393.41 |
Sysbench mem t 4 | 4300089.71 | 4163689.93 | 4163996.47 | 4209258.70 | 78662.11 |
Bem, existem dados de referência, agora diretamente os resultados dos provedores de testes.
Além disso, não citarei os logs completos para não inflacionar o artigo, mas os tenho armazenados, se desejar, solicite um link, compartilharei-o, embora os dados deles tenham sido transferidos para a tabela.
Yandex Cloud
Resultados para a zona ru-central1-a:
Tabela de resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 554,00 | 543,00 | 545,00 | 547,33 | 5,86 |
FIO ESCREVA IOPS | 237,00 | 232,00 | 233,00 | 234,00 | 2,65 |
CPU STRESS-NG 1 | 10236,00 | 10045,00 | 10161,00 | 10147.33 | 96,23 |
CPU STRESS-NG 2 | 19756.00 | 19479,00 | 20291,00 | 19842.00 | 412,77 |
CPU STRESS-NG 4 | 18743,00 | 17906,00 | 18192,00 | 18280.33 | 425,43 |
CPU Sysbench para 1 | 11,94 | 11,95 | 11,98 | 11,96 | 0,02 |
Processador Sysbench para 2 | 7.19 | 7.23 | 6.16 | 6,86 | 0,61 |
CPU Sysbench para 4 | 3,72 | 3,72 | 3,70 | 3,71 | 0,01 |
Sysbench mem t 1 | 2080442.66 | 2085059.55 | 2079872.00 | 2081791.40 | 2844,64 |
Sysbench mem t 2 | 2460594.62 | 2715142.01 | 2536824.57 | 2570853.73 | 130641.04 |
Sysbench mem t 4 | 2978385.59 | 2928369.70 | 3020014.59 | 2975589.96 | 45886.36 |
Resultados para a zona ru-central1-b:
Tabela de resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 543,00 | 537,00 | 523,00 | 534,33 | 10,26 |
FIO ESCREVA IOPS | 232,00 | 230,00 | 224,00 | 228,67 | 4.16 |
CPU STRESS-NG 1 | 10634,00 | 10848.00 | 11870.00 | 11117.33 | 660,55 |
CPU STRESS-NG 2 | 22109,00 | 20861,00 | 21020.00 | 21330,00 | 679,30 |
CPU STRESS-NG 4 | 18964.00 | 19449.00 | 18992.00 | 19135.00 | 272,29 |
CPU Sysbench para 1 | 11,30 | 11,35 | 11,34 | 11,33 | 0,03 |
Processador Sysbench para 2 | 5,87 | 5,88 | 5,89 | 5,88 | 0,01 |
CPU Sysbench para 4 | 3.56 | 3.55 | 3.54 | 3.55 | 0,01 |
Sysbench mem t 1 | 2190808.15 | 2197111.57 | 2197600.12 | 2195173.28 | 3788,20 |
Sysbench mem t 2 | 2442631.19 | 2433028.20 | 2415710.66 | 2430456.68 | 13643.25 |
Sysbench mem t 4 | 3010239.12 | 3168720.68 | 3088677.50 | 3089212.43 | 79242.13 |
Resultados para a zona ru-central1-c:
Tabela de resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 541,00 | 551,00 | 558,00 | 550,00 | 8,54 |
FIO ESCREVA IOPS | 232,00 | 236,00 | 239,00 | 235,67 | 3.51 |
CPU STRESS-NG 1 | 10424,00 | 10192,00 | 10325,00 | 10313.67 | 116,41 |
CPU STRESS-NG 2 | 19637,00 | 20330.00 | 19585.00 | 19850.67 | 415,93 |
CPU STRESS-NG 4 | 28884.00 | 28477,00 | 28750,00 | 28703.67 | 207,42 |
CPU Sysbench para 1 | 11,67 | 11,64 | 11,68 | 11,67 | 0,02 |
Processador Sysbench para 2 | 6.02 | 6.05 | 7.06 | 6,38 | 0,59 |
CPU Sysbench para 4 | 3,40 | 3,40 | 3,40 | 3,40 | 0,00 |
Sysbench mem t 1 | 2131168.41 | 2130201.75 | 2142809.68 | 2134726.61 | 7016.81 |
Sysbench mem t 2 | 2777100.50 | 2592860.27 | 2226863.89 | 2532274.89 | 280076.82 |
Sysbench mem t 4 | 2834838.09 | 2935298.85 | 2753443.73 | 2841193.56 | 91093.99 |
Resumo Resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 543,89 | 534,33 | 550,00 | 8.38 | 1,5% |
FIO ESCREVA IOPS | 232,78 | 228,67 | 235,67 | 3,66 | 1,6% |
CPU STRESS-NG 1 | 10526.11 | 10147.33 | 11117.33 | 518,72 | 4,9% |
CPU STRESS-NG 2 | 20340.89 | 19842.00 | 21330,00 | 856,61 | 4,2% |
CPU STRESS-NG 4 | 22039.67 | 18280.33 | 28703.67 | 5786.99 | 26,3% |
CPU Sysbench para 1 | 11,65 | 11,33 | 11,96 | 0,31 | 2,7% |
Processador Sysbench para 2 | 6,37 | 5,88 | 6,86 | 0,49 | 7,7% |
CPU Sysbench para 4 | 3.55 | 3,40 | 3,71 | 0,16 | 4,5% |
Sysbench mem t 1 | 2137230.43 | 2081791.40 | 2195173.28 | 56732.39 | 2,7% |
Sysbench mem t 2 | 2511195.10 | 2430456.68 | 2570853.73 | 72533.45 | 2,9% |
Sysbench mem t 4 | 2968665.32 | 2841193.56 | 3089212.43 | 124154.35 | 4,2% |
Quero prestar atenção especial a um fato notável.
Com uma carga completa de todos os núcleos de máquinas virtuais nas zonas A e B, o desempenho total é
MAIS BAIXO do que com uma carga de apenas dois em cada quatro núcleos.
Além disso, peguei mais carros adicionais em uma das zonas e fiz um teste para eles - o problema não desapareceu.
Suponho que esse seja um problema técnico e esteja associado aos recursos de hardware das máquinas usadas para hipervisores e levando-os em consideração ao alocar recursos (lembro-me desse caso da prática). Bem, ou com outra coisa, não consigo olhar para dentro, mas realmente não quero adivinhar.
Espero que os camaradas de Y. Oblak leiam este artigo e façam algo com ele, e se tiverem muita sorte, eles lhe dirão exatamente o que, caso contrário, será um pouco ofensivo e às vezes desagradável (muitas aplicações focam no número de núcleos para calcular o número de threads) .
Nuvem Mail.RU (MCS)
O Mail.ru possui apenas duas zonas de acesso; portanto, dois testes foram realizados em máquinas diferentes na mesma zona.
Resultados para a zona leste de Moscou (primeira VM):
Tabela com os resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 487,00 | 538,00 | 534,00 | 519,67 | 28,36 |
FIO ESCREVA IOPS | 209,00 | 231,00 | 229,00 | 223,00 | 12.17 |
CPU STRESS-NG 1 | 7359,00 | 6567,00 | 7022.00 | 6982.67 | 397,46 |
CPU STRESS-NG 2 | 14144,00 | 14916.00 | 13137,00 | 14065.67 | 892,08 |
CPU STRESS-NG 4 | 21381,00 | 21199,00 | 21032.00 | 21204.00 | 174,55 |
CPU Sysbench para 1 | 15,54 | 16,20 | 14,98 | 15,57 | 0,61 |
Processador Sysbench para 2 | 7,30 | 7,70 | 7,53 | 7,51 | 0,20 |
CPU Sysbench para 4 | 4.02 | 4,09 | 3,79 | 3,96 | 0,16 |
Sysbench mem t 1 | 1117493.99 | 1161261.85 | 1423941.92 | 1234232.59 | 165744.17 |
Sysbench mem t 2 | 1819474.62 | 1692128.17 | 1668347.81 | 1726650.20 | 81262.88 |
Sysbench mem t 4 | 2357943.97 | 2379492.56 | 2312976.14 | 2350137.56 | 33938.38 |
Resultados para a zona Moscou-Leste (segunda VM):
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 475,00 | 509,00 | 472,00 | 485,33 | 20,55 |
FIO ESCREVA IOPS | 205,00 | 218,00 | 204,00 | 209,00 | 7,81 |
CPU STRESS-NG 1 | 6953,00 | 7030,00 | 7127,00 | 7036.67 | 87,19 |
CPU STRESS-NG 2 | 14623.00 | 13945,00 | 13523,00 | 14030.33 | 554,94 |
CPU STRESS-NG 4 | 27022.00 | 27184.00 | 27670,00 | 27292.00 | 337,23 |
CPU Sysbench para 1 | 14,88 | 13,44 | 14,45 | 14,26 | 0,74 |
Processador Sysbench para 2 | 6,89 | 7.13 | 6,69 | 6,90 | 0,22 |
CPU Sysbench para 4 | 3.52 | 3,49 | 3,68 | 3.57 | 0,10 |
Sysbench mem t 1 | 1129165.42 | 1238462.80 | 1344025.16 | 1237217.79 | 107435.28 |
Sysbench mem t 2 | 1904396.37 | 1740914.98 | 1733216.87 | 1792842.74 | 96684.92 |
Sysbench mem t 4 | 2416702.17 | 2437844.98 | 2384159.80 | 2412902.32 | 27043.55 |
Resultados para a zona Moscou-Norte:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 510,00 | 647,00 | 613,00 | 590,00 | 71,34 |
FIO ESCREVA IOPS | 218,00 | 277,00 | 262,00 | 252,33 | 30,66 |
CPU STRESS-NG 1 | 9657,00 | 9742,00 | 9867,00 | 9755,33 | 105,63 |
CPU STRESS-NG 2 | 19251.00 | 20069.00 | 19677,00 | 19665.67 | 409.12 |
CPU STRESS-NG 4 | 39020.00 | 38665.00 | 38461.00 | 38715.33 | 282,88 |
CPU Sysbench para 1 | 12,45 | 12,53 | 12,66 | 12,55 | 0,11 |
Processador Sysbench para 2 | 6,25 | 6,20 | 6.22 | 6.22 | 0,02 |
CPU Sysbench para 4 | 3,18 | 3,16 | 3,16 | 3,17 | 0,01 |
Sysbench mem t 1 | 2003899.51 | 1990350.38 | 1974380.86 | 1989543.58 | 14775.85 |
Sysbench mem t 2 | 1990419.20 | 2022621.53 | 1934822.52 | 1982621.08 | 44415.93 |
Sysbench mem t 4 | 2337084.52 | 2227633.06 | 2021779.21 | 2195498.93 | 160090.01 |
Resumo Resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 531,67 | 485,33 | 590,00 | 53,36 | 10,0% |
FIO ESCREVA IOPS | 228,11 | 209,00 | 252,33 | 22/11 | 9,7% |
CPU STRESS-NG 1 | 7924.89 | 6982.67 | 9755,33 | 1585,44 | 20,0% |
CPU STRESS-NG 2 | 15920.56 | 14030.33 | 19665.67 | 3243.41 | 20,4% |
CPU STRESS-NG 4 | 29070.44 | 21204.00 | 38715.33 | 8890.10 | 30,6% |
CPU Sysbench para 1 | 14,13 | 12,55 | 15,57 | 1,52 | 10,7% |
Processador Sysbench para 2 | 6,88 | 6.22 | 7,51 | 0,64 | 9,3% |
CPU Sysbench para 4 | 3.57 | 3,17 | 3,96 | 0,40 | 11,2% |
Sysbench mem t 1 | 1486997.99 | 1234232.59 | 1989543.58 | 435.219,81 | 29,3% |
Sysbench mem t 2 | 1834038.01 | 1726650.20 | 1982621.08 | 132864.82 | 7,2% |
Sysbench mem t 4 | 2319512.93 | 2195498.93 | 2412902.32 | 111890.39 | 4,8% |
Pelo interessante, quero observar que não há problemas de degradação do desempenho ao usar quatro threads, e parece que os kernels honestos (embora fracos) são emitidos.
Além disso, na zona Norte, processadores significativamente mais potentes são usados do que na zona Leste, a diferença de desempenho em plena carga atinge duas vezes. Pelo mesmo dinheiro. Tire suas próprias conclusões.
Selectel
Os resultados de seus testes foram muito interessantes. Em termos absolutos, ele fornece as máquinas de quatro núcleos mais poderosas de todos os fornecedores testados.
Resultados para a zona "Moscow - Berzarin-1":
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 2319,00 | 2294,00 | 2312,00 | 2308,33 | 12,90 |
FIO ESCREVA IOPS | 998,00 | 986,00 | 995,00 | 993,00 | 6.24 |
CPU STRESS-NG 1 | 11320.00 | 11038.00 | 10936.00 | 11098.00 | 198,91 |
CPU STRESS-NG 2 | 23164.00 | 22093.00 | 22558,00 | 22605,00 | 537,04 |
CPU STRESS-NG 4 | 43879,00 | 44118.00 | 44086.00 | 44027.67 | 129,74 |
CPU Sysbench para 1 | 12.01 | 11,96 | 11,97 | 11,98 | 0,02 |
Processador Sysbench para 2 | 6.01 | 5,99 | 5,99 | 6,00 | 0,02 |
CPU Sysbench para 4 | 3.01 | 3,00 | 3,00 | 3,00 | 0,01 |
Sysbench mem t 1 | 2158876.40 | 2162098.22 | 2158738.03 | 2159904.22 | 1901.32 |
Sysbench mem t 2 | 2413547.34 | 2340801.67 | 2569554.40 | 2441301.14 | 116874.54 |
Sysbench mem t 4 | 2858920.38 | 2935705.54 | 2714476.62 | 2836367.51 | 112325.57 |
Resultados para a zona "Moscow - Berzarin-2":
Tabela com os resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 1735,00 | 1729,00 | 1724,00 | 1729,33 | 5,51 |
FIO ESCREVA IOPS | 745,00 | 742,00 | 740,00 | 742,33 | 2,52 |
CPU STRESS-NG 1 | 18231,00 | 18462,00 | 18518.00 | 18403.67 | 152,13 |
CPU STRESS-NG 2 | 36965.00 | 36495.00 | 37006.00 | 36822.00 | 283,93 |
CPU STRESS-NG 4 | 74272.00 | 74428.00 | 74218.00 | 74306,00 | 109,05 |
CPU Sysbench para 1 | 11,22 | 11.17 | 11.15 | 11.18 | 0,03 |
Processador Sysbench para 2 | 5,60 | 5,60 | 5,60 | 5,60 | 0,00 |
CPU Sysbench para 4 | 2,83 | 2,81 | 2,81 | 2,82 | 0,01 |
Sysbench mem t 1 | 2396762.92 | 2405750.19 | 2394240.05 | 2398917.72 | 6050.06 |
Sysbench mem t 2 | 1980511.45 | 2079328.96 | 1968664.26 | 2009501.56 | 60761.74 |
Sysbench mem t 4 | 2283159.05 | 2271698.71 | 2299665.98 | 2284841.25 | 14059.32 |
Resultados para a zona "São Petersburgo - Dubrovka-1":
Tabela com os resultadosTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 2550,00 | 2618,00 | 2666,00 | 2611,33 | 58,29 |
FIO ESCREVA IOPS | 1096,00 | 1126,00 | 1147,00 | 1123,00 | 25,63 |
CPU STRESS-NG 1 | 10801.00 | 10512.00 | 11175,00 | 10829.33 | 332,41 |
CPU STRESS-NG 2 | 21418,00 | 21642.00 | 23179,00 | 22079.67 | 958,62 |
CPU STRESS-NG 4 | 44183.00 | 44557,00 | 43012.00 | 43917.33 | 806,03 |
CPU Sysbench para 1 | 11,97 | 11,99 | 11,99 | 11,99 | 0,01 |
Processador Sysbench para 2 | 5,99 | 5,99 | 6,00 | 5,99 | 0,01 |
CPU Sysbench para 4 | 3.02 | 3,00 | 3,00 | 3.01 | 0,01 |
Sysbench mem t 1 | 2159958.70 | 2162062.66 | 2158540.58 | 2160187.31 | 1772.13 |
Sysbench mem t 2 | 2430650.73 | 2512678.85 | 2417945.57 | 2453758.38 | 51420.53 |
Sysbench mem t 4 | 3171660.68 | 3018827.14 | 3343661.47 | 3178049.76 | 162511.39 |
Tabela de resumo com os resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 2216,33 | 1729,33 | 2611,33 | 448,14 | 20,2% |
FIO ESCREVA IOPS | 952,78 | 742,33 | 1123,00 | 193,49 | 20,3% |
CPU STRESS-NG 1 | 13443.67 | 10829.33 | 18403.67 | 4297.59 | 32,0% |
CPU STRESS-NG 2 | 27168.89 | 22079.67 | 36822.00 | 8363.96 | 30,8% |
CPU STRESS-NG 4 | 54083.67 | 43917.33 | 74306,00 | 17513.14 | 32,4% |
CPU Sysbench para 1 | 11,72 | 11.18 | 11,99 | 0,46 | 4,0% |
Processador Sysbench para 2 | 5,86 | 5,60 | 6,00 | 0,23 | 3,9% |
CPU Sysbench para 4 | 2,94 | 2,82 | 3.01 | 0,11 | 3,7% |
Sysbench mem t 1 | 2239669.75 | 2159904.22 | 2398917.72 | 137912.86 | 6,2% |
Sysbench mem t 2 | 2301520.36 | 2009501.56 | 2453758.38 | 252972.39 | 11,0% |
Sysbench mem t 4 | 2766419.51 | 2284841.25 | 3178049.76 | 450.693,81 | 16,3% |
Como eu disse, de todos os testados, esse provedor fornece as máquinas mais produtivas baseadas em 4 threads. Mas aqui há uma peculiaridade - novamente, pelo mesmo dinheiro, obtemos uma produtividade quase duas vezes diferente - compare os resultados do Berezin-2 com o restante.
Além disso, gostaria de observar unidades muito rápidas a um preço razoável, o melhor disponível dos três fornecedores domésticos testados. Ao mesmo tempo, uma máquina com o processador mais rápido tem a unidade mais lenta dentre três.
Acontece uma espécie de loteria, embora, mesmo que você não tenha sorte, tudo ainda será muito, muito decente.
Google cloud
Os resultados dos testes GCE não trouxeram surpresas especiais.
Tudo é bastante previsível, homogêneo e geralmente consistente com o que é reivindicado.
Resultados para zone europe-west1-b:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 924,00 | 910,00 | 888,00 | 907,33 | 18.15 |
FIO ESCREVA IOPS | 396,00 | 391,00 | 380,00 | 389,00 | 8.19 |
CPU STRESS-NG 1 | 14237,00 | 14137,00 | 14094.00 | 14156,00 | 73,37 |
CPU STRESS-NG 2 | 28576,00 | 28419,00 | 28544,00 | 28513,00 | 82,96 |
CPU STRESS-NG 4 | 29996,00 | 29880,00 | 29449,00 | 29775,00 | 288,22 |
CPU Sysbench para 1 | 12,63 | 12,66 | 12,67 | 12,65 | 0,02 |
Processador Sysbench para 2 | 6,52 | 6,41 | 6,38 | 6,44 | 0,08 |
CPU Sysbench para 4 | 3,35 | 3.56 | 3.56 | 3,49 | 0,12 |
Sysbench mem t 1 | 2055240.49 | 2056617.63 | 2054720.94 | 2055526.35 | 980,13 |
Sysbench mem t 2 | 1377683.73 | 1346931.63 | 1397680.79 | 1374098.72 | 25563.81 |
Sysbench mem t 4 | 2279937.89 | 2275427.56 | 2278615.94 | 2277993.80 | 2318,63 |
Resultados para a zona europe-west-1c:
Resultados do testeFIO LEIA IOPS | 946,00 | 995,00 | 984,00 | 975,00 | 25,71 |
---|
FIO ESCREVA IOPS | 406,00 | 428,00 | 422,00 | 418,67 | 11,37 |
CPU STRESS-NG 1 | 14256,00 | 14250,00 | 14423,00 | 14309.67 | 98,20 |
CPU STRESS-NG 2 | 28875,00 | 29057.00 | 29256.00 | 29062.67 | 190,56 |
CPU STRESS-NG 4 | 30317.00 | 30462.00 | 29478,00 | 30085.67 | 531,23 |
CPU Sysbench para 1 | 12,52 | 12,49 | 12,61 | 12,54 | 0,06 |
Processador Sysbench para 2 | 6.28 | 6,30 | 6,31 | 6.29 | 0,02 |
CPU Sysbench para 4 | 3,38 | 3.57 | 3.52 | 3,49 | 0,10 |
Sysbench mem t 1 | 2085832.84 | 2066794.24 | 2086303.39 | 2079643.49 | 11130.26 |
Sysbench mem t 2 | 1368168.11 | 1535725.51 | 1710618.59 | 1538170.74 | 171238.33 |
Sysbench mem t 4 | 2375534.54 | 2307610.22 | 2386046.89 | 2356397.22 | 42576.47 |
Resultados para a zona europe-west1-d:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 885,00 | 910,00 | 943,00 | 912,67 | 29/09 |
FIO ESCREVA IOPS | 379,00 | 390,00 | 405,00 | 391,33 | 13,05 |
CPU STRESS-NG 1 | 14254,00 | 14230.00 | 14008,00 | 14164,00 | 135,63 |
CPU STRESS-NG 2 | 28262.00 | 28321.00 | 28473,00 | 28352.00 | 108,86 |
CPU STRESS-NG 4 | 29615,00 | 29312,00 | 29138.00 | 29355.00 | 241,39 |
CPU Sysbench para 1 | 12,61 | 12,65 | 12,66 | 12,64 | 0,03 |
Processador Sysbench para 2 | 6,37 | 6,35 | 6,35 | 6,36 | 0,01 |
CPU Sysbench para 4 | 3,43 | 3.56 | 3.55 | 3.52 | 0,07 |
Sysbench mem t 1 | 2050031.60 | 2068677.64 | 2052707.70 | 2057138.98 | 10081.96 |
Sysbench mem t 2 | 1228313.90 | 1530374.73 | 1345581.79 | 1368090.14 | 152.283,14 |
Sysbench mem t 4 | 2335035.15 | 2420871.72 | 2361505.39 | 2372470.75 | 43956.33 |
Tabela de resumo com os resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 931,67 | 907,33 | 975,00 | 37,62 | 4,0% |
FIO ESCREVA IOPS | 399,67 | 389,00 | 418,67 | 16,50 | 4,1% |
CPU STRESS-NG 1 | 14209,89 | 14156,00 | 14309.67 | 86,50 | 0,6% |
CPU STRESS-NG 2 | 28642.56 | 28352.00 | 29062.67 | 372,63 | 1,3% |
CPU STRESS-NG 4 | 29738.56 | 29355.00 | 30085.67 | 366,69 | 1,2% |
CPU Sysbench para 1 | 12,61 | 12,54 | 12,65 | 0,06 | 0,5% |
Processador Sysbench para 2 | 6,36 | 6.29 | 6,44 | 0,07 | 1,1% |
CPU Sysbench para 4 | 3,50 | 3,49 | 3.52 | 0,01 | 0,4% |
Sysbench mem t 1 | 2064102.94 | 2055526.35 | 2079643.49 | 13482,64 | 0,7% |
Sysbench mem t 2 | 1426786.53 | 1368090.14 | 1538170.74 | 96508.32 | 6,8% |
Sysbench mem t 4 | 2335620.59 | 2277993.80 | 2372470.75 | 50549.23 | 2,2% |
Não há nada a comentar.
A produtividade em 4 fluxos dificilmente difere de dois, mas não se degrada.
Em geral, cada núcleo é muito produtivo e tem a metade do poder da máquina virtual de teste, que está fora de competição, e não se pode dizer que eles são os mais fracos.
Discos de estrelas do céu não agarram, mas para a maioria das tarefas, haverá muitos deles.
A única coisa que vale a pena notar é uma excelente homogeneidade. Cada uma das máquinas difere no desempenho não mais do que no erro de medição, o que oferece excelente previsibilidade e facilidade de planejamento.
Aws
O líder de mercado, seu teste me surpreendeu um pouco, pois eles têm o mesmo problema encontrado em Y. Oblak.
Apesar de estar trabalhando com ele há muito tempo, de alguma forma não foi suficiente para eu descobrir a diferença de desempenho entre os modos de carga total e parcialmente, então os resultados foram uma surpresa para mim, em certa medida.
Para o teste, foi utilizado o tipo c5.xlarge, como o mais barato adequado para os requisitos.
Resultados para a zona eu-central-1a:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 1839,00 | 1976.00 | 2083,00 | 1966.00 | 122,31 |
FIO ESCREVA IOPS | 789,00 | 850,00 | 895,00 | 844,67 | 53,20 |
CPU STRESS-NG 1 | 21422.00 | 21722,00 | 21736,00 | 21626.67 | 177,38 |
CPU STRESS-NG 2 | 43305.00 | 43331.00 | 43197.00 | 43277.67 | 71,06 |
CPU STRESS-NG 4 | 40876,00 | 40884.00 | 40888.00 | 40882.67 | 6,11 |
CPU Sysbench para 1 | 8,77 | 8,77 | 8,77 | 8,77 | 0,00 |
Processador Sysbench para 2 | 4,40 | 4,40 | 4,40 | 4,40 | 0,00 |
CPU Sysbench para 4 | 2,52 | 2,52 | 2,52 | 2,52 | 0,00 |
Sysbench mem t 1 | 3063495.18 | 3064238.67 | 3063452.11 | 3063728.65 | 442,21 |
Sysbench mem t 2 | 1848705.16 | 1841708.24 | 1751938.22 | 1814117.21 | 53962.11 |
Sysbench mem t 4 | 2413033.89 | 2249609.19 | 2299986.20 | 2320876.43 | 83691.15 |
Resultados para a zona eu-central-1b:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 1723,00 | 1988.00 | 2101,00 | 1937.33 | 194,03 |
FIO ESCREVA IOPS | 739,00 | 855,00 | 903,00 | 832,33 | 84,32 |
CPU STRESS-NG 1 | 21785.00 | 21733,00 | 21741,00 | 21753.00 | 28,00 |
CPU STRESS-NG 2 | 43370,00 | 43323.00 | 40351.00 | 42348.00 | 1729,61 |
CPU STRESS-NG 4 | 40857,00 | 40864,00 | 40916.00 | 40879,00 | 32,23 |
CPU Sysbench para 1 | 8,77 | 8,77 | 8,77 | 8,77 | 0,00 |
Processador Sysbench para 2 | 4,39 | 4,40 | 4,39 | 4,39 | 0,00 |
CPU Sysbench para 4 | 2,52 | 2,52 | 2,52 | 2,52 | 0,00 |
Sysbench mem t 1 | 3065227.23 | 3065688.95 | 3063830.23 | 3064915.47 | 967,78 |
Sysbench mem t 2 | 2032840.35 | 1987864.46 | 1968489.39 | 1996398.07 | 33013.31 |
Sysbench mem t 4 | 2684716.32 | 2654257.87 | 2618592.53 | 2652522.24 | 33096.05 |
Resultados para a zona eu-central-1c:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Média | Stdev |
---|
FIO LEIA IOPS | 1761,00 | 2003.00 | 2108,00 | 1957.33 | 177,95 |
FIO ESCREVA IOPS | 756,00 | 861,00 | 906,00 | 841,00 | 76,97 |
CPU STRESS-NG 1 | 21632.00 | 21708.00 | 21615.00 | 21651.67 | 49,52 |
CPU STRESS-NG 2 | 43247.00 | 43236,00 | 43283.00 | 43255.33 | 24,58 |
CPU STRESS-NG 4 | 39931.00 | 39359,00 | 40835,00 | 40041.67 | 744,20 |
CPU Sysbench para 1 | 8,77 | 8,77 | 8,77 | 8,77 | 0,00 |
Processador Sysbench para 2 | 4,40 | 4,40 | 4,40 | 4,40 | 0,00 |
CPU Sysbench para 4 | 2,52 | 2,52 | 2,52 | 2,52 | 0,00 |
Sysbench mem t 1 | 3064343.66 | 3064434.20 | 2998820.16 | 3042532.67 | 37856.17 |
Sysbench mem t 2 | 2235882.60 | 2088501.51 | 2166875.91 | 2163753.34 | 73740.15 |
Sysbench mem t 4 | 2870035.79 | 2813221.50 | 2771999.66 | 2818418.98 | 49224.29 |
Tabela de resumo dos resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 1953.56 | 1937.33 | 1966.00 | 14,70 | 0,8% |
FIO ESCREVA IOPS | 839,33 | 832,33 | 844,67 | 6.33 | 0,8% |
CPU STRESS-NG 1 | 21677.11 | 21626.67 | 21753.00 | 66,90 | 0,3% |
CPU STRESS-NG 2 | 42960.33 | 42348.00 | 43277.67 | 530,41 | 1,2% |
CPU STRESS-NG 4 | 40601.11 | 40041.67 | 40882.67 | 484,50 | 1,2% |
CPU Sysbench para 1 | 8,77 | 8,77 | 8,77 | 0,00 | 0,0% |
Processador Sysbench para 2 | 4,40 | 4,39 | 4,40 | 0,00 | 0,1% |
CPU Sysbench para 4 | 2,52 | 2,52 | 2,52 | 0,00 | 0,1% |
Sysbench mem t 1 | 3057058.93 | 3042532.67 | 3064915.47 | 12594.10 | 0,4% |
Sysbench mem t 2 | 1991422.87 | 1814117.21 | 2163753.34 | 174871.16 | 8,8% |
Sysbench mem t 4 | 2597272.55 | 2320876.43 | 2818418.98 | 253330.90 | 9,8% |
Como eu disse acima, os resultados me surpreenderam.
Sim, entendo que o problema se manifesta explicitamente apenas com alguns tipos de carga (não é visível no Sysbench), mas dados os resultados de outras plataformas, isso claramente não é um problema com o teste, ou seja, a limitação de desempenho.
Em defesa da AWS, posso dizer que, quando você cria uma máquina, ela permite desativar o HyperThreading, o que pelo menos ajuda a eliminar o problema com perdas de desempenho em alguns aplicativos.
Caso contrário, os discos não garantem esse desempenho, mas suportam o Burst para suavizar cargas, portanto, se você precisar ler / gravar relativamente, rapidamente, mas não com muita frequência (por exemplo, uma vez a cada poucos minutos), tudo ficará bem.
Além disso, a homogeneidade dos resultados é excelente, tudo é previsível e sem surpresas.
Azure
Inicialmente, eu não queria incluí-lo no teste, porque Eu nunca trabalhei com ele e nem tinha uma conta lá. Mas, pensando bem, decidi testá-lo da mesma forma, por um bom motivo
, pelo qual paguei .
Quero explicar imediatamente que a região foi escolhida a partir do princípio "em algum lugar da Europa" e que o tipo de máquina é 100% adequado para as condições (4 processadores, 8 GB de memória).
Na primeira iteração do teste, era A4 v2, marcado como "Uso geral", com o qual este artigo foi publicado. Os conhecedores que chegaram aos comentários me explicaram o que eu fiz de errado e que o Azure tem uma
máquina mais lenta, pode custar mais do que aquela que você não consegue descobrir mais rapidamente e sem ler a documentação ou pesquisar no Google . Após o qual os resultados foram atualizados com base no tipo de F4s
Resultados para a zona France-Central-1:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Awerage | Stdev |
---|
FIO LEIA IOPS | 1066,00 | 1102,00 | 1038,00 | 1068,67 | 32/08 |
FIO ESCREVA IOPS | 457,00 | 473,00 | 445,00 | 458,33 | 14,05 |
CPU STRESS-NG 1 | 9470,00 | 10059,00 | 10759,00 | 10096.00 | 645,30 |
CPU STRESS-NG 2 | 20424.00 | 20502,00 | 20940,00 | 20622.00 | 278.14 |
CPU STRESS-NG 4 | 39039.00 | 39294.00 | 39141.00 | 39158.00 | 128,35 |
CPU Sysbench para 1 | 10,32 | 10,42 | 10,50 | 10,42 | 0,09 |
Processador Sysbench para 2 | 5,35 | 5,35 | 5,33 | 5,35 | 0,01 |
CPU Sysbench para 4 | 2,77 | 2,78 | 2,76 | 2,77 | 0,01 |
Sysbench mem t 1 | 2449793.14 | 2467589.35 | 2456056.19 | 2457812.89 | 9027.22 |
Sysbench mem t 2 | 2370286.78 | 2388077.81 | 2299377.92 | 2352580.84 | 46925.93 |
Sysbench mem t 4 | 2697042.08 | 2625447.20 | 2707918.64 | 2676802.64 | 44.806,37 |
Resultados para a zona France-Central-2:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Awerage | Stdev |
---|
FIO LEIA IOPS | 1037,00 | 1104,00 | 1102,00 | 1081,00 | 28/12 |
FIO ESCREVA IOPS | 445,00 | 473,00 | 473,00 | 463,67 | 16,17 |
CPU STRESS-NG 1 | 10159,00 | 10360,00 | 10452,00 | 10323.67 | 149,84 |
CPU STRESS-NG 2 | 21027.00 | 20025.00 | 20415.00 | 20489,00 | 505,08 |
CPU STRESS-NG 4 | 39530,00 | 40927,00 | 40170.00 | 40209.00 | 699,32 |
CPU Sysbench para 1 | 10,39 | 9,95 | 9,91 | 10,08 | 0,27 |
Processador Sysbench para 2 | 5.09 | 5.13 | 5.19 | 5.14 | 0,05 |
CPU Sysbench para 4 | 2,69 | 2,75 | 2,66 | 2,70 | 0,04 |
Sysbench mem t 1 | 2568336.75 | 2450640.64 | 2567906.16 | 2528961.18 | 67827.92 |
Sysbench mem t 2 | 2401273.88 | 2362027.64 | 2372950.76 | 2378750.76 | 20255.79 |
Sysbench mem t 4 | 2740927.62 | 2787787.19 | 2770497.39 | 2766404.07 | 23696.44 |
Resultados para a zona France-Central-3:
Resultados do testeTeste | Ter 1 | Ter 2 | Ter 3 | Awerage | Stdev |
---|
FIO LEIA IOPS | 1436,00 | 830,00 | 1136,00 | 1134,00 | 303,00 |
FIO ESCREVA IOPS | 614,00 | 355,00 | 487,00 | 485,33 | 129,51 |
CPU STRESS-NG 1 | 10834.00 | 10326,00 | 10763,00 | 10641,00 | 275,10 |
CPU STRESS-NG 2 | 21505,00 | 21108.00 | 21428,00 | 21347,00 | 210,53 |
CPU STRESS-NG 4 | 42194.00 | 41540,00 | 41427.00 | 41720.33 | 414,08 |
CPU Sysbench para 1 | 9,87 | 9,75 | 9,79 | 9,80 | 0,06 |
Processador Sysbench para 2 | 5.04 | 5.05 | 5.13 | 5.08 | 0,05 |
CPU Sysbench para 4 | 2,67 | 2,65 | 2,67 | 2,66 | 0,01 |
Sysbench mem t 1 | 2622263.24 | 2616326.80 | 2632668.25 | 2623752.76 | 8271,93 |
Sysbench mem t 2 | 2495841.62 | 2438685.04 | 2556294.51 | 2496940.39 | 58812.43 |
Sysbench mem t 4 | 2814306.59 | 2783117.34 | 2846909.91 | 2814777.95 | 31898.90 |
Tabela de resumo dos resultados:
Teste | Média | Média de min | Média máxima | Stdev | StDev% |
---|
FIO LEIA IOPS | 1094,56 | 1068,67 | 1134,00 | 34,71 | 3,2% |
FIO ESCREVA IOPS | 469,11 | 458,33 | 485,33 | 14,30 | 3,0% |
CPU STRESS-NG 1 | 10353.56 | 10096.00 | 10641,00 | 273,73 | 2,6% |
CPU STRESS-NG 2 | 20819.33 | 20489,00 | 21347,00 | 461,79 | 2,2% |
CPU STRESS-NG 4 | 40362.44 | 39158.00 | 41720.33 | 1288.04 | 3,2% |
CPU Sysbench para 1 | 10,10 | 9,80 | 10,42 | 0,31 | 3,0% |
Processador Sysbench para 2 | 5.19 | 5.08 | 5,35 | 0,14 | 2,7% |
CPU Sysbench para 4 | 2,71 | 2,66 | 2,77 | 0,05 | 2,0% |
Sysbench mem t 1 | 2536842.28 | 2457812.89 | 2623752.76 | 83250.19 | 3,3% |
Sysbench mem t 2 | 2409424.00 | 2352580.84 | 2496940.39 | 76912.65 | 3,2% |
Sysbench mem t 4 | 2752661.55 | 2676802.64 | 2814777.95 | 70006.71 | 2,5% |
Bom desempenho, um dos melhores entre as plataformas apresentadas.
É verdade que o preço estraga tudo.Sumário
Desempenho
Vamos começar com uma tabela dinâmica de resultados.Eu insiro com uma imagem, porque Eu quero usar cores, mas os dados estão nas tabelas apresentadas acima.
Quanto melhor,melhor.Vamos dar uma olhada no desempenho da CPU:
em geral, a AWS mantém a liderança no desempenho medido médio para cargas de núcleo único e duplo. Em segundo lugar, está o Google Cloud.Dos provedores russos, a Selectel se mostrou melhor. Além do terceiro lugar em termos de carga parcial, ele tem um primeiro único ao carregar todos os núcleos, mesmo levando em conta os resultados desiguais entre as zonas (o que é desagradável, mas neste caso não afeta).Agora a memória: de
acordo com a velocidade de trabalhar com a memória, a memória morreA AWS mantém a palma da mão no modo de thread único, para thread duplo - Azure e I. Cloud para quatro threads.Discos:
Em termos de velocidade do disco, temos um vencedor claro - o Selectel. Nenhum dos participantes da comparação oferece algo assim por dinheiro comparável.Em segundo lugar, está a AWS, graças à velocidade permitida e geralmente decente.Atrás dele estão o GCE e o Azure, e Y. Cloud e MSC fecham a lista, que oferece aproximadamente as mesmas soluções de desempenho.Custo em relação ao desempenho
Agora vamos falar sobre outro fator interessante - custo.Essa comparação não cobre, de forma alguma, o custo agregado das soluções em diferentes plataformas; seu objetivo é simples - comparar o custo de uma unidade de desempenho para diferentes fornecedores.O cálculo é baseado no teste de esforço-ng.Preços de liquidação por 1 mês de uso de cada instância (sem IVA):Fornecedor | Yandex.Cloud | Mcs | Selectel | Gce | Aws | Azure |
---|
Preço (cur) | 3799.12 | 3608 | 4050.624 | 103,08 | 147,57 | 147,46 |
Preço (rub) | 3799.12 | 3608 | 4050.624 | 6747.6168 | 9659.9322 | 9652.7316 |
Alt Alt (preço atual) | 3799.12 | 3608 | 3.454,94 | 35,6 | 56,07 | 9652.7316 |
Alt Alt (esfregar) | 3799.12 | 3608 | 3.454,94 | 2330.376 | 3670.3422 | 9652.7316 |
A tabela de custos requer alguma explicação.Para os provedores que têm a oportunidade de reduzir o custo dos recursos descritos no início do artigo, existem dois custos - o principal e o alternativo, calculados levando em consideração esses recursos.Como esse não é um desconto e está vinculado a cenários de uso diferentes, tenho uma boa idéia para calcular o custo e levá-lo em consideração.Além disso, devido à diferença de moedas, o custo da AWS, Azure (sim, eu sei que ele pode aparecer em rublos (de alguma forma), a calculadora deles me mostrou os valores em dólares) e o GCE é reduzido ao equivalente em rublo, correspondendo à taxa de 65,46 rublos por Dólar americanoAlém disso, para o Azure, não foi possível alocar o custo do disco, o disco padrão da instância é de 16 GB, quanto o disco realmente custará da calculadora não é muito claro (também há o número de solicitações consideradas), portanto, o preço é indicado apenas para a instância em si , embora o total ainda não muda a situação, o Azure continua sendo o mais caro.Portanto, o custo de cada solução, reduzido a rublos por papagaio no teste de estresse-ng para a quantidade mínima de recursos que foram obtidos no teste:
Menos é melhorSe você calcular com base nos resultados médios do teste, a imagem não mudará fundamentalmente, mas algo ainda está fundamental mudança:
menos é melhorAcontece que em todas as categorias, se você contar sem IVA, a Selectel vence, além disso, na categoria de cargas pesadas, com quase duas margens.Agora vamos ver o que acontece se você reler o custo, levando em consideração possíveis economias, dependendo do cenário de uso.O custo alternativo, levando em consideração a economia devido ao caso de uso, é reduzido a rublos por papagaio no teste de estresse para a quantidade mínima de recursos que foram obtidos no teste:
Menos é melhorÉ o mesmo, mas a quantidade média de recursos:
aqui a imagem muda.Em todos os cenários, exceto por uma carga pesada constantemente cheia com uma margem decente, a AWS e a GCE apresentam quase o mesmo custo por unidade de recursos.No caso de uma carga pesada, eles são concorrentes da Selectel, que oferece recursos quase pelo mesmo dinheiro, mas com menos "concessões" (no entanto, seus nós são constantes e não são desativados a qualquer momento, ao contrário das instâncias do AWS Spot e do Google Preemptible).Portanto, se você abordar a arquitetura com cuidado e competência, poderá economizar muito dinheiro em um local aparentemente vazio.Em vez de conclusões
O teste acabou sendo longo, mas quanto a mim - interessante.Para mim, tirei algumas conclusões sobre os resultados, espero que ajude você a analisar a questão do desempenho da plataforma em nuvem um pouco diferente e provavelmente facilite um pouco o tormento da escolha, bem como ajude a diagnosticar problemas de desempenho em algumas plataformas devido a "recursos" identificados.** ATUALIZAÇÃO ** Atualizações e preços selecionados da Selectel, conforme O IVA seria levado em consideração incorretamente** UPDATE2 ** Resultados atualizados do Azure para um novo tipo de nó, conclusões atualizadas, mas basicamente nada mudou