/ / Como vários aplicativos da web na mesma instância do tomcat compartilham o conjunto de conexões com o banco de dados? - java, hibernação, tomcat, saas, multilocatário

Como vários aplicativos da Web na mesma instância do tomcat podem compartilhar o pool de conexão com o banco de dados? - java, hibernate, tomcat, saas, multi-inquilino

Tendo em mente que cada aplicativo da web possui seu próprio banco de dados separado (mas todos os bancos de dados estão no mesmo servidor de banco de dados).

O cenário é que eu tenho um aplicativo saas para vários inquilinos - implanto o mesmo aplicativo para cada cliente. Cada cliente trabalha em um banco de dados chamado db_cid, Onde cid é o ID do cliente, ou seja, um identificador exclusivo do cliente.

Trabalhando com hibernação.

Respostas:

4 para resposta № 1

Se você precisar compartilhar recursos entre a Webaplicativo, você deve deixar o contêiner da web gerenciá-los e colocá-los no JNDI. O aplicativo da Web pode obter os recursos de um contexto JNDI com muita facilidade.

Os conjuntos de conexões JDBC são tão típicos que cada contêiner da web documenta como configurá-los.

Para programas independentes, usamos o JNDI simples http://www.osjava.org/simple-jndi/ que fornece a configuração externa que nos permite separar completamente a base de código da configuração.

Experimente, você vai gostar :)


0 para resposta № 2

Você já pensou em configurar uma conexão JNDI no contexto do tomcat (global)? Pode ser uma conexão agrupada, conforme descrito em Exemplo de origem de dados JNDI.