Embora eu não tenha executado nenhum aplicativo JRuby no Tomcat, executei aplicativos do ColdFusion em diversos servidores de aplicativos J2EE e também tive problemas semelhantes.
Em estas FAQs , você verá que o SOracle diz que no Windows de 32 bits , você estará limitado a um tamanho de heap máximo de 1,4 a 1,6 GB. Eu nunca consegui ficar tão estável assim, e suspeito que você esteja executando uma configuração similar.
Meu palpite é que suas solicitações estão demorando muito para executar b / c com um tamanho de heap tão alto, a JVM alocou mais memória física do que o Windows tinha para oferecer e, portanto, o Windows gasta muito tempo trocando páginas e sem memória para o disco, para que possa fornecer a quantidade necessária de memória para a JVM.
Minha recomendação, embora contra-intuitiva, é que você realmente reduza o tamanho do heap máximo para algo em torno de 1,2 GB. Também é possível aumentar o tamanho mínimo, se você perceber que há lentidão no processamento da solicitação do aplicativo, enquanto a JVM precisa solicitar mais memória para o Windows aumentar o tamanho de seu heap conforme ele é preenchido com objetos não coletados.