Mensagens recentes por fabio kung

1 mensagem

Avatar fabio kung
1 mensagem
9 meses atrás

Fórum: arquitetura – Discussão: Abordagens de multitenant

Outra coisa importante de se considerar é o chargeback. Para aplicações e produtos em que isso é importante é MUITO difícil fazer com uma aplicação monolítica única cuidando de todos os “tenants”.

Ex. de chargeback é fazer com que quem esteja “ferrando” os servidores pagar mais por isso. Nessa mesma linha, com tenants separados em instâncias/contextos diferentes, também é mais fácil garantir que alguns poucos usuários afetem a performance de outros.

Virtualização e Cloud IaaS ajudam nesse caso, pois garantem uma fatia mínima da infraestrutura para cada tenant. Isolamento total, tanto no nível da segurança como o Guilherme comentou, quanto no nível mais baixo da infraestrutura. Alguns produtos que precisam garantir isolamento e fazer chargeback sofrem muito por causa disso. Vide o caso da Force.com que precisou criar a própria linguagem de programação “multitenant”, a própria linguagem de query e um preprocessador de queries que faz otimizações e garante que nenhum tenant acesse a área de outro.

Vale o custo?

Como já comentaram também, a principal desvantagem de separar cada tenant em uma instância diferente é ter que lidar com muitas instâncias/aplicações/contextos, ao invés de apenas uma. Fazer updates separados, escalar cada um separadamente, etc. Automação da infra aqui ajuda bastante (principalmente configuration management – puppet, chef, CF Engine, …).