CS
Modelo multi-tenancy
Olá pessoal, tô precisando de um help, uma sugestão. Tô desenvolvendo um sistema em adianti, onde pretendo trabalhar com o modelo multi-tenancy, do tipo Multi-inquilino via container: vários inquilinos são executados na mesma instância de um container de aplicação (um servidor de aplicações), mas cada inquilino está associado a uma instância separada do banco de dados, ou seja, vou ter um servidor web rodando uma única aplicação só que com um banco de dados separado para cada cliente.
Gostaria de saber se alguém já implementou algo do tipo, pois não tô sabendo como automatizar isso para que no momento que o cliente logar no sistema eu verificar a que unidade ele pertence e com isso apontar para a conexão de banco de dados correspondente.
Pensei em fazer algo no arquivo init.php onde identificaria a que unidade o usuário logado pertence e dai setasse o nome do banco de dados correspondente em uma constante. Só que não tô sabendo implementar essa regra.
Gostaria de saber se alguém já implementou algo do tipo, pois não tô sabendo como automatizar isso para que no momento que o cliente logar no sistema eu verificar a que unidade ele pertence e com isso apontar para a conexão de banco de dados correspondente.
Pensei em fazer algo no arquivo init.php onde identificaria a que unidade o usuário logado pertence e dai setasse o nome do banco de dados correspondente em uma constante. Só que não tô sabendo implementar essa regra.
Já fiz algo parecido.
Primeiro criei um arquivo .ini para cada cliente. No momento do login gravo na sessão o identificador do cliente, correspondente ao nome do arquivo .ini, e aí ao abrir a transação é só recuperar o valor da sessão.
Ex:
Estou tendo a mesma necessidade.