Criei dois aplicativos Heroku muito simples para testar o serviço, mas muitas vezes leva vários segundos para carregar a página quando os visito pela primeira vez:
- Cropify - Basic Sinatra App ( no github )
- Textile2HTML - aplicativo Sinatra ainda mais básico ( no github )
Tudo o que fiz foi criar um aplicativo Sinatra simples e implantá-lo. Não fiz nada para bagunçar ou testar os servidores Heroku. O que posso fazer para melhorar o tempo de resposta? Está muito lento agora e não tenho certeza por onde começar. O código dos projetos está no github, se isso ajudar.
ruby
performance
heroku
Lance Pollard
fonte
fonte
Você também pode querer investigar as opções de cache disponíveis no Heroku w / Varnish e Memcached. Estes são persistentes independentemente do dynos.
Por exemplo, se você tiver uma página inicial inalterada, pode armazená-la em cache por longos períodos em Varnish adicionando cabeçalhos Cache-Control à resposta. Assim, seus usuários não sentirão o impacto da carga até que queiram "fazer algo", e não quando chegarem.
fonte
Você deve verificar a resposta de Tom Robinson para "Escalabilidade: Como funciona o Heroku?" no Quora: http://www.quora.com/Scalability/How-does-Heroku-work
O Heroku divide os recursos do servidor entre muitos clientes / aplicativos diferentes. Seu aplicativo contém blocos atribuídos de poder de computação. Partições Heroku com base na demanda de recursos. Quando você tem um aplicativo popular que exige mais energia, pode pagar por mais 'dynos' (contêineres de aplicativo) e, em troca, obter uma fatia maior do bolo.
No seu caso, porém, você está executando um aplicativo gratuito que poucas pessoas - se alguma fora de você - estão visitando / usando. Portanto, o Heroku reduz os recursos que você obtém ao descarregar seu aplicativo - basicamente, colocando-o em hibernação - até que uma solicitação seja feita em seu endereço. Quando isso acontece, e seu aplicativo está ocioso por muito tempo, demora para recarregar.
Adicione 1 dinamômetro extra para evitar que seu aplicativo adormeça, se o tempo de recarga for importante.
fonte
Eu estou tendo o mesmo problema. Implantei um aplicativo Rails 3 (1.9.2) ontem à noite e é lento. Eu sei que 1.9.2 / Rails 3 está em BETA no Heroku, mas o tíquete de suporte disse que deveria funcionar usando algumas instruções que eles me enviaram.
Eu entendo que a primeira solicitação depois de muito tempo é a mais demorada. Faz sentido. Mas simplesmente carregar páginas que nem mesmo se conectam a um banco de dados levando 10 segundos às vezes é muito ruim.
De qualquer forma, você pode querer tentar o que vou fazer. Esse é o perfil do meu aplicativo e veja quanto tempo leva localmente. Se estiver demorando 400 ms, algo está errado. Mas se eu obtiver 50ms localmente e ainda levar 10 segundos no Heroku, então algo está definitivamente errado.
Obviamente, o cache ajuda, mas você só obtém 5 MB de graça e, mais uma vez, com UMA pessoa usando o site, não deve ser tão lento.
fonte