Tenho um servidor web (especificações abaixo) com 12 TB de armazenamento. Estou movendo grandes quantidades de arquivos csv empacotados em TARs para o servidor e, em seguida, extraindo no servidor. O problema é que ao extrair os arquivos TAR, o servidor fica tão lento que fica quase inutilizável. Não estou fazendo nada maluco, geralmente executando 2-4 extrações por vez. Mas mesmo executando apenas um ou dois, o servidor fica visivelmente lento. Isso vai ser um grande problema para mim, já que estarei carregando e extraindo arquivos TAR enquanto as pessoas quiserem usar o site e agora não posso fazer as duas coisas. Sou realmente novo no Linux e nesta comunidade, então deixe-me saber se posso fornecer mais informações úteis e atualizarei a postagem.
Eu estou supondo que o disco é o gargalo?
Em caso afirmativo, posso limitar o uso do disco de extração de alcatrão ou dar prioridade a todo o resto?
Estatística de E/S:
avg-cpu: %user %nice %system %iowait %steal %idle
0.15 0.56 0.40 14.83 0.00 84.06
Device: tps kB_read/s kB_wrtn/s kB_read kB_wrtn
loop0 0.00 0.00 0.00 1907 2
sda 155.19 787.23 1484.89 604305327 1139862930
sdb 154.49 765.39 1493.48 587544552 1146456242
sdc 153.82 759.91 1485.53 583338594 1140353662
md4 1041.52 1861.40 4425.45 1428880721 3397151904
md3 4.78 46.70 11.08 35850458 8501904
md2 0.00 0.00 0.00 3641 98
TOPO:
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
7194 root 20 0 0 0 0 D 5.0 0.0 0:17.38
13811 user1 20 0 121272 1620 1464 D 4.3 0.0 0:02.20 tar
Especificações do servidor:
Intel Atom C2750, 8c/8t - 2,4 GHz/2,6 GHz, 16 GB DDR3 ECC 1600 MHz
O
ionice
comando é "nice
for IO" e vai rodar um comando com diferentes prioridades de IO, então vai (ou não) ceder para outros processos que queiram usar o disco.executará o
tar
comando com prioridade "idle", portanto, ele só usará o disco quando ninguém mais quiser. Isso evitará que ele interfira em outros processos.Não haverá muito benefício em executar várias extrações em paralelo neste caso. Um arquivo tar é apenas dados concatenados e alguns cabeçalhos, então não há nada além de ler e escrever. Pode ser útil se você estiver trabalhando em discos diferentes ou em determinados SSDs.