conexao multi-banco em n-camada (3 camadas, n-tier)

04/07/2008

2

Obrigado aqueles que possam ajudar.

A situação é a seguinte:
Hoje tenho uma grande aplicação nos moldes cliente servidor, onde disponibilizo a aplicação aos clientes que fazem o acesso direto ao banco.
Nesta aplicação configuro e faço conexão com vário bancos e de diferentes fornecedores, esta conexão é interna ou externa à rede da empresa, bastando o usuário escolher neste caso o tipo de serviço que deseja operar, a conexão fica transparente ao usuário, ele não sabe se está conectando internamente ou externamente ou se está usando o banco A ou B.

Porém resolvi migrar está aplicação para os moldes de 3 camadas e estou parado em um dilema.
Pois se a conexão fica em um servidor de aplicação que está ligado diretamente a um único servidor banco de dados e a um único banco de dados.
Como resolvo este problema para dar acesso ao usuário selecionar qual banco ele quer acessar ou deixar a aplicação servidora ser inteligente o suficiente para saber qual o banco o usuário selecionou e com isso ele efetuar a conexão com o mesmo.

O Delphi tem uma solução para este tipo de situação em multicamada?


Responder

Posts

é possível fazer isso num servidor multicamadas. basta que você configure-o de modo a levantar uma instância por usuário.
minha aplicação funciona dessa forma que você mencionou. o mesmo servidor pode acessar n bancos de dados, em qualquer localização da rede.
um cliente pode conectar-se ao SQL Server na máquina X, outro pode conectar-se ao Oracle na máquina Y, enquanto outros podem conectar-se no Firebird que está na máquina Z (todos passando pela mesma aplicação servidora). a regra é você quem define.


Responder

07/07/2008

Marcio.tenorio

Ok. Entendi a idéia, mas como estou dando os primeiros passos, não sei ainda onde procurar melhores informações sobre o assunto. Procurei já em vários lugar mas o assunto é meio restrito.
Como faço para instanciar por usuário? Na criação da aplicação servidora ou quando registro no DCOM?
Ou, como consigo identificar qual usuário está se acessando o serviço para poder alterar ou designar determinada conexão com o banco?
De qualquer forma agradeço já mão.


Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira