Primeira consulta lenta após subir o projeto no servidor web

Boa noite,

Estou desenvolvendo uma aplicação web em que após ter sido levantada em um servidor web, a primeira consulta sempre demora um pouco para ser realizada.
Após essa consulta, as demais requisições ao banco são executadas rapidamente.
Gostaria de saber se alguém conhece alguma configuração (.xml) em que poderia deixar configurado uma consulta (select 1 from tabela) que seria realizada sempre que o servidor web levantasse o projeto.

Grato!

Isso deve acontecer por que você está abrindo a conexão com o BD quando a pessoa faz uma requisição… Se estiver usando frameworks, coloque a conexão para escopo de aplicação…

Boa noite Rafael,

Realmente esse deve ser o motivo da demora.

A classe que realiza a criação de conexão é simples, segue abaixo:

import javax.enterprise.inject.Produces;
import javax.persistence.EntityManager;
import javax.persistence.EntityManagerFactory;
import javax.persistence.Persistence;

public class JPAUtil {
	
	private static EntityManagerFactory factory = Persistence.createEntityManagerFactory("app-unit");
	
	@Produces
	public EntityManager getEntityManager() {
		return factory.createEntityManager();
	}
	
}

Fiz algumas mudanças na classe para ficar no escopo de aplicação, mas sem sucesso…
Tentei colocar o entityManager como variável de classe, inserir a anotação @ApplicationScoped, criar um filtro (não ia ficar legal)…

Poderia me dar alguma dica?

Vlw!

Qual framework web você usa?

JSF 2.1.21 com Primefaces 3.5