Eu sei que o Linux é construído para processos multiusuário/simultâneos, mas no nível corporativo, muitos deles são usados para aplicativos únicos (mas grandes) para suportar um serviço interno, dos quais atendem apenas alguns clientes.
Nesse caso de uso, como devemos ajustar o sistema ou kernel (especificamente Red Hat Linux, Fedora, CentOS) para otimizar o cenário? Para minimizar a latência, reduzindo a troca de contexto, com muito poucas E/S de disco local.
A duração da sessão pode ser persistente (já que o número de clientes é poucos), o intercâmbio de tamanho de dados é pequeno, mas muito frequente, como 1k a 2k de mensagem por segundo, tamanho de 40 a 100 bytes.
Responder1
O ajuste de desempenho é tanto uma arte negra quanto uma ciência. Livros completos foram escritos sobre isso, incluindo um pouco como parte dodocumentação do fornecedor
Você começa com um bom monitoramento, adiciona carga, obtém uma linha de base e só então começa a ajustar e observar se o seu ajuste teve ou não o resultado pretendido.
Enxágue e repita até obter o resultado ideal.
Você não menciona seu lançamento principal do RHEL ou CentOS, mas todos eles também incluem ajuste automático, por exemplo, o tuned
daemon. Perfis de desempenho predefinidos podem ser selecionados tuned-adm list
e ativados com tune-adm profile <profile-name>
.
Para o seu caso de uso, o perfil RHEL 7latency-performance
parece aquele do qual você pode se beneficiar:
latency-performance
Um perfil de servidor focado na redução da latência. Esse perfil é recomendado para cargas de trabalho sensíveis à latência que se beneficiam do ajuste de estado c e do aumento da eficiência do TLB de páginas enormes e transparentes. Este perfil favorece o desempenho em vez da economia de energia configurandointel_pstate
emax_perf_pct=100
. Ele permite páginas enormes transparentes, usacpupower
para definir o governador cpufreq de desempenho e solicita umcpu_dma_latency
valor de1
.
Para ajustes mais gerais do LinuxBrandan Greggfez uma série de diagramas visuais de qual ferramenta usar em qual parte do seu sistema que cria folhas de dicas realmente legais: