1
resposta

CARREGAR BANCO DE DADOS DE ACORDO COM O CLIENTE

Pessoal boa tarde!!! Tenho a seguinte situação, um servidor de banco de dados com sql server com vários bancos e cada banco é de um cliente. Nas configurações de banco de dados é informado qual banco deve acessar na api. O problema que estou tendo é, como faço para de acordo com a requisição eu apontar o banco correto do cliente? Exemplo: Cliente A fez a requisição e deve acessar o banco A Cliente B fez a requisição e deve acessar o banco B

Consigo fazer isso e como?

1 resposta

Oi Flávio,

Esse é um conceito conhecido como Multi-tenant(também chamado de Multi-tenancy), que é bastante utilizado em SAAS(Software as a Service) na qual um mesmo produto será utilizado por diversos clientes distintos, mas cada cliente tem os seus dados que devem ser isolados dos outros.

No seu caso você vai utilizar a estratégia de Database Per Tenant, na qual cada cliente(tenant) tem um banco de dados separado, sendo que para isso as configurações do banco de dados precisarão ser feitas de maneira dinâmica, via classes ao invés de ser via application.properties.

Aqui tem um artigo que mostra um exemplo de como isso pode ser feito: https://medium.com/swlh/multi-tenancy-implementation-using-spring-boot-hibernate-6a8e3ecb251a

Bons estudos!