Pelo menos parte disso será a alocação de pilha (RLIMIT_STACK), que é alocada para cada thread do cherokee ... e o cherokee faz muitos threads. Esta memória não está realmente sendo usada e ainda está disponível, então normalmente isso não importa, mas com o OpenVZ ela é contada para sua cota e você precisa mantê-la no OpenVZ VPSes. Eu não consigo nem mesmo iniciar o cherokee em sua configuração padrão no meu VPS de 256MB porque o OpenVZ acha que está usando mais do que os 210MB disponíveis, apenas começando.
Você pode reduzir o número de threads que cherokee está usando em Advanced- > Resources na configuração web (a configuração é "server! thread_number = XX" se você estiver editando cherokee.conf diretamente) ou pode basta alterar o tamanho da pilha antes de executar o cherokee com 'ulimit -s SIZE_IN_KB' (você pode ver o padrão antes de alterá-lo com 'ulimit -s' - meu padrão do VPS é 10240, 10MB por thread ). Tenha em mente que você precisa definir o ulimit antes de executar o cherokee, e não é todo o sistema. Então, faça isso em um shell antes de iniciar o cherokee no mesmo shell ou edite seu script de inicialização para executar 'ulimit -s XX' antes de iniciar o cherokee.
Um excelente recurso para fazer com que as coisas funcionem em VPSs (especialmente low-end) é LowEndBox. Eles têm uma postagem no blog sobre como " Reduzir o limite de pilha para aplicativos de vários segmentos ".