| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/02/2010 08:57:32
|
nathanpsouza
JavaChild
![[Avatar]](/images/avatar/253fbcc9e6a2a977cc43322f57bfd4b1.jpg)
Membro desde: 11/07/2009 16:46:57
Mensagens: 106
Localização: Curitiba PR
Offline
|
galera, estou trabalhando em um sistema que tem um banco central, e atravéz desse banco central o usuario devera se conectar em seu banco especifico, é um sistema de empresas onde cada empresa tem seu proprio banco.
O sistema é web e usa hibernate + spring com 3 backends diferentes, eu imaginei em armazenar a sessionfactory de cada empresa em um tipo de pool, e o usuario da empresa acessar esse pool e pegar a sessionfactory correspondente, soh que ai vem o problema, minha experiencia com spring não é suficiente para um monstro desses :X
(é um projeto pessoal) e gostaria de idéias dos jedi daqui :}
[]'s
|
Dúvidas?? o fórum esta ai pra isso  |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/02/2010 11:08:47
|
pozzo
JavaEvangelist
Membro desde: 08/04/2006 11:07:20
Mensagens: 331
Localização: Curitiba
Offline
|
Os dados são os mesmos em todos os bancos, ou seja, é um cluster de bancos? Ou cada base vai ter dados diferentes? Também não ficou muito claro esse banco central, pode explicar melhor?
Bom, caso seja um cluster de bancos, você passa o ip de todos os bancos no hibernate.cfg.xml.
Caso deva ser separado, a idéia de ter vários session factories me parece boa.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/02/2010 11:33:40
|
nathanpsouza
JavaChild
![[Avatar]](/images/avatar/253fbcc9e6a2a977cc43322f57bfd4b1.jpg)
Membro desde: 11/07/2009 16:46:57
Mensagens: 106
Localização: Curitiba PR
Offline
|
São vários bancos com dados diferentes, a principio pensei em usar um banco compartilhado para todas as empresas, mais isso com certeza vai me dar dor de cabeça posteriormente, então pensei nessa forma, um banco para cada empresa e o "banco central" é onde ficaram os dados de cada empresa, como o plano assinado, os dados da empresa, os dados de usuários administradores, pagamentos.. enfim tudo que diz respeito a gerencia do plano de acesso ao sistema.
Axo que agora a idéia ficou mais clara pra que a galera possa opinar :}
|
Dúvidas?? o fórum esta ai pra isso  |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/02/2010 13:38:27
|
pozzo
JavaEvangelist
Membro desde: 08/04/2006 11:07:20
Mensagens: 331
Localização: Curitiba
Offline
|
nathanpsouza wrote:São vários bancos com dados diferentes, a principio pensei em usar um banco compartilhado para todas as empresas, mais isso com certeza vai me dar dor de cabeça posteriormente...
Porque "dor de cabeça"? Eu teria apenas um para todos. E, caso necessário, teria um cluster de bancos.
Eu acho mais fácil ter uma tabela 'Empresas' e relacionamentos, do que ter que gerenciar session factories no código. É claro que você pode fazer isso de uma forma transparente usando algum padrão, mas a primeira vista não me parece a melhor opção.
This message was edited 1 time. Last update was at 15/02/2010 13:39:29
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/02/2010 14:02:06
|
nathanpsouza
JavaChild
![[Avatar]](/images/avatar/253fbcc9e6a2a977cc43322f57bfd4b1.jpg)
Membro desde: 11/07/2009 16:46:57
Mensagens: 106
Localização: Curitiba PR
Offline
|
axo mais seguro uma base pra cada empresa, caso ela desista do sistema, pode exportar em csv e boa..
sei la, do meu ponto de vista resolvi optar por essa abordagem.. (só nao pergunte sobre os fundamentos pq aew complica uhuihsiuHIuh)..
|
Dúvidas?? o fórum esta ai pra isso  |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 17/02/2010 08:19:55
|
nathanpsouza
JavaChild
![[Avatar]](/images/avatar/253fbcc9e6a2a977cc43322f57bfd4b1.jpg)
Membro desde: 11/07/2009 16:46:57
Mensagens: 106
Localização: Curitiba PR
Offline
|
problema resolvido com spring + hibernate configurado via código em um bean + um esquema para manter a sessionfactory :}
|
Dúvidas?? o fórum esta ai pra isso  |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 20/05/2010 14:53:44
|
EuclidesFilizola
JavaEvangelist
![[Avatar]](/images/avatar/45efa623f6111a5e410641c6b86c85ea.jpg)
Membro desde: 21/09/2006 12:38:54
Mensagens: 493
Offline
|
Tem como tu passar teu codigo, e explicar como funciona ???
estou passando pelo mesmo problema.
|
"Inteligencia é a faculdade de fazer objetos artificiais... especialmente ferramentas para fazer ferramentas" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 21/05/2010 14:06:58
|
Tchello
GUJ Master
![[Avatar]](/images/avatar/901db33c84e81b1a30e59949bbcb112b.png)
Membro desde: 07/06/2008 14:41:04
Mensagens: 1695
Offline
|
Se você tem vários bancos por que você não cria uma PU (persistence unit) pra cada um e não injeta um EM (EntityManager) pra específica quando você precisar?
Seja mais claro no que precisa!
Os bancos são independentes? Ou cada sistema vai precisar de informações de um banco ou outroS vez ou outra?
São sistemas independentes e diferentes?
Ou são cópias do mesmo sistema em paralelo pra clientes diferentes?
Ou o sistema é compartilhado diferenciando-se em tempo de execução pra cada cliente?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/05/2010 10:22:57
|
EuclidesFilizola
JavaEvangelist
![[Avatar]](/images/avatar/45efa623f6111a5e410641c6b86c85ea.jpg)
Membro desde: 21/09/2006 12:38:54
Mensagens: 493
Offline
|
Bem...
é justamente oq vc disse ...
eu tenho 1 banco e 5 schemas ...
só que para cada schema, eu tenho uma persistence unit...
mas não sei porque.. algo da errado..
qndo eu começo a fazer várias buscas....
ele da o erro seguinte: "erro fatal: muitos clientes conectados.."
|
"Inteligencia é a faculdade de fazer objetos artificiais... especialmente ferramentas para fazer ferramentas" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 22/05/2010 10:38:00
|
Lindberg
JavaEvangelist
![[Avatar]](/images/avatar/a18aa23ee676d7f5ffb34cf16df3e08c.jpg)
Membro desde: 02/05/2006 19:23:53
Mensagens: 363
Offline
|
eu passei por isso, quando abre e fecha conexao muitas vezes da esta mensagem.
olha seu codigo !
eu fiz isso no meu context.xml
<?xml version="1.0" encoding="ISO-8859-1"?>
<Context path="/meusite" docBase="meusite" debug="5" reloadable="true" crossContext="true">
<Resource
auth="Container"
driverClassName="com.mysql.jdbc.Driver"
maxActive="40000"
maxIdle="200"
maxWait="10000"
name="jdbc/minhaconexao"
type="javax.sql.DataSource"
url="jdbc:mysql://servidor/meubanco?autoReconnect=true"
username="usuario"
password="senha" />
</Context>
ve se ajuda !
This message was edited 1 time. Last update was at 22/05/2010 10:48:24
|
Aqui... A turma é D+++. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 23/05/2010 09:35:08
|
EuclidesFilizola
JavaEvangelist
![[Avatar]](/images/avatar/45efa623f6111a5e410641c6b86c85ea.jpg)
Membro desde: 21/09/2006 12:38:54
Mensagens: 493
Offline
|
isso... coloca onde ? no web.xml ?
|
"Inteligencia é a faculdade de fazer objetos artificiais... especialmente ferramentas para fazer ferramentas" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 25/05/2010 18:05:33
|
Lindberg
JavaEvangelist
![[Avatar]](/images/avatar/a18aa23ee676d7f5ffb34cf16df3e08c.jpg)
Membro desde: 02/05/2006 19:23:53
Mensagens: 363
Offline
|
este arquivo: context.xml
eu to usando na pasta ...\meusite\META-INF
- Windows XP
- Tomcat 6
This message was edited 1 time. Last update was at 25/05/2010 18:07:15
|
Aqui... A turma é D+++. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2010 07:44:40
|
EuclidesFilizola
JavaEvangelist
![[Avatar]](/images/avatar/45efa623f6111a5e410641c6b86c85ea.jpg)
Membro desde: 21/09/2006 12:38:54
Mensagens: 493
Offline
|
Deu certo aqui mano.
eu fiz assim, coloquei dentro do meu persistence.xml , utilizei o pool de conexao c3p0.
|
"Inteligencia é a faculdade de fazer objetos artificiais... especialmente ferramentas para fazer ferramentas" |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 26/05/2010 10:33:19
|
sergiotaborda
GUJ Expert
![[Avatar]](/images/avatar/b4a0e0fbaa9f16d8947c49f4e610b549.png)
Membro desde: 22/03/2005 20:57:48
Mensagens: 3433
Offline
|
nathanpsouza wrote:São vários bancos com dados diferentes, a principio pensei em usar um banco compartilhado para todas as empresas, mais isso com certeza vai me dar dor de cabeça posteriormente, então pensei nessa forma, um banco para cada empresa e o "banco central" é onde ficaram os dados de cada empresa, como o plano assinado, os dados da empresa, os dados de usuários administradores, pagamentos.. enfim tudo que diz respeito a gerencia do plano de acesso ao sistema.
Axo que agora a idéia ficou mais clara pra que a galera possa opinar :}
Se vc está tentando implementar um sistema multi empresa isso é completamente errado. Desenhe o sistema para comportar todas as empreas num unico banco.
|
Criando sua própria API de Validação
Blog do MiddleHeaven |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 18/06/2010 13:19:12
|
xdraculax
Java Ninja
Membro desde: 12/01/2009 16:12:54
Mensagens: 286
Offline
|
Estranho isso, porque não usa um banco só, e no cliente uma réplica dele como se fosse um cache para que o sistema possa funcionar off-line?
Não entendi a finalidade de um banco para cada empresa no MESMO ambiente.
This message was edited 1 time. Last update was at 18/06/2010 14:34:30
|
-Atenha-se a resolver o problema, e não criticar opiniões.
-Você percebe que está programando d+, quando está escrevendo identado!
-Não precisa estar certo, basta acreditar. |
|
|
 |
|
|