Blog

Desenvolvimento de aplicativos multilocatário com a Xano: Arquitetura e práticas recomendadas

Maxime Topolov
Maxime Topolov
4 de junho de 2024
 
Desenvolvimento de aplicativos multilocatário com a Xano: Arquitetura e práticas recomendadas

O multilocatário é um padrão arquitetônico em que uma única instância de um aplicativo atende a vários clientes ou "locatários". Os dados de cada locatário são isolados e permanecem invisíveis para os outros locatários, mesmo que todos estejam usando a mesma infraestrutura subjacente de hardware e software. As arquiteturas de vários locatários proporcionam melhor utilização dos recursos e manutenção mais fácil em comparação com instâncias de aplicativos separadas para cada cliente.

A Xano é uma plataforma de backend sem código que simplifica o desenvolvimento de aplicativos multilocatário sem escrever nenhum código de backend. Com o suporte integrado a multilocatários e as práticas recomendadas da Xano, você pode criar aplicativos dimensionáveis que isolam de forma limpa os dados de cada locatário e otimizam a utilização de recursos. Vamos nos aprofundar em algumas considerações importantes de arquitetura e práticas recomendadas ao desenvolver aplicativos multilocatários no Xano.

Arquitetura de banco de dados para multilocação

A base de qualquer aplicativo multilocatário é a arquitetura do banco de dados. Há algumas abordagens comuns:

1. Bancos de dados separados: Cada locatário tem seu próprio banco de dados fisicamente separado. Embora isso proporcione o maior isolamento, tem custos de manutenção mais altos e não permite o compartilhamento de dados entre os locatários.

2. Banco de dados compartilhado, esquemas separados: Todos os locatários compartilham um banco de dados, mas cada locatário tem seu próprio conjunto de tabelas em um esquema separado. Esse é um bom equilíbrio entre isolamento e eficiência.

3. Banco de dados compartilhado, esquema compartilhado: Todos os locatários compartilham o mesmo banco de dados e tabelas, com uma coluna de ID de locatário usada para isolar os dados de cada locatário. Essa opção tem a menor sobrecarga de manutenção, mas corre o risco de vazamento de dados entre locatários se as consultas não forem filtradas adequadamente.

No Xano, a abordagem recomendada é Banco de dados compartilhado, esquemas separados. Você pode criar um espaço de trabalho para cada locatário que forneça um ambiente logicamente isolado com suas próprias tabelas de banco de dados. Os recursos de permissão e gerenciamento de equipe da Xano permitem controlar o acesso a cada espaço de trabalho.

Otimização do desempenho em aplicativos multilocatários  

Com arquiteturas multilocatário, muitos clientes estão acessando os mesmos recursos de computação simultaneamente. Para garantir um desempenho consistentemente bom, considere o seguinte:

- Implemente a limitação de taxa por locatário para evitar que um único locatário sobrecarregue os recursos compartilhados e diminua o desempenho dos outros. A Xano permite que você defina limites de taxa para cada endpoint de API.

- Use o armazenamento em cache para minimizar o acesso a dados redundantes. A Xano oferece suporte ao armazenamento em cache de respostas para pontos de extremidade de API para armazenar automaticamente as respostas em cache e retorná-las rapidamente para solicitações subsequentes.

- Monitore a utilização de recursos entre os locatários para identificar gargalos e otimizar as consultas. A Xano fornece métricas de uso para rastrear itens como solicitações de API, consultas a bancos de dados e utilização de memória ao longo do tempo.

- Empregue a indexação estrategicamente em padrões de consulta comuns para maximizar a eficiência do banco de dados. A Xano permite que você configure facilmente os índices nas tabelas do seu banco de dados.

Provisionamento e gerenciamento de locatários

A parte de gerenciamento de locatários é uma consideração importante em arquiteturas multilocatário. Você precisará automatizar o fluxo de provisionamento que configura um ambiente novo e isolado ao integrar um novo cliente. Com o Xano, você pode:

- Crie um novo espaço de trabalho via API quando um novo locatário se inscrever. Configure-o com o esquema e as permissões de acesso adequados.

- Use o gerenciamento de equipe do Xano para convidar os membros da equipe do locatário e definir suas funções/permissões no espaço de trabalho.

- Integre-se ao seu sistema de faturamento para ativar/desativar recursos com base no status da assinatura do locatário.

- Monitore a utilização de recursos de cada locatário e envie alertas se eles estiverem se aproximando dos limites do plano.

Ao tratar o locatário como um cidadão de primeira classe, você pode criar sistemas robustos para lidar automaticamente com todo o ciclo de vida do locatário, desde o provisionamento até a escala e o desprovisionamento.

Segurança e conformidade

A segurança é fundamental quando vários clientes dependem do mesmo sistema subjacente para isolar seus dados. O Xano oferece muitos recursos de segurança incorporados:

- Suporte à autenticação de API e controle de acesso granular baseado em função (RBAC) para garantir que somente usuários e serviços autorizados possam acessar os dados do locatário
- Criptografia automática de dados em trânsito (SSL) e em repouso
- Conformidade com SOC 2 Tipo 2 para operações seguras do data center

Use os recursos de segurança do Xano para garantir a confidencialidade e a integridade dos dados de cada locatário. Automatize as políticas de segurança e monitore a conformidade.


O desenvolvimento de aplicativos multilocatário requer uma arquitetura cuidadosa para isolar os dados do locatário, otimizar a utilização de recursos e escalonar para integrar novos clientes ao longo do tempo. A Xano fornece os blocos de construção para desenvolver back-ends multilocatários seguros e de alto desempenho sem escrever código. Ao seguir as práticas recomendadas de locação, segurança, desempenho e automação, você pode criar aplicativos robustos que podem ser dimensionados para atender a qualquer número de clientes. O paradigma sem código permite que você se concentre no ciclo de vida do gerenciamento de locatários do seu aplicativo, enquanto o Xano lida com as complexidades subjacentes.

Compartilhe esta publicação
 
Backend
Aplicativos de negócios
Dados
ERP
Grandes empresas
Engenharia de software
Maxime Topolov
Maxime Topolov
CEO

Você também pode ler

API
Desempenho
Conteúdo
SEO
Dados
Aplicativo do consumidor
Engenharia de software
On-premises
Desenvolvimento móvel
ERP
Comércio eletrônico
Recrutamento
Nuvem
Migração de conteúdo
IA
Front-end
CMS
Sem cabeça
Backend
Pouco código
Aplicativos de negócios
IA de conversão
Educação
Mídia e publicação
Assistência médica
Serviços financeiros
Grandes empresas
Início