O Mito do Aplicativo Rails Limitado por E/S

2025-01-25

É comum acreditar que aplicativos Rails são inerentemente limitados por E/S, com o banco de dados sendo o principal gargalo de desempenho, tornando o desempenho do Ruby menos crítico. Esta postagem contesta essa ideia. Embora o banco de dados seja de fato um gargalo de escalabilidade, o autor argumenta que isso não significa que o aplicativo gasta a maior parte do seu tempo esperando por E/S. A análise das melhorias de desempenho do YJIT e problemas de desempenho comuns (como índices de banco de dados ausentes) sugere que muitos aplicativos Rails são na verdade limitados pela CPU. A postagem destaca a confusão entre escassez de CPU e espera de E/S, e enfatiza que a escolha do modelo de execução certo (assíncrono, com threads ou baseado em processos) depende da proporção E/S/CPU do aplicativo. O autor pede atenção ao desempenho do Ruby e aponta oportunidades de otimização no próprio Rails.

Desenvolvimento