Introdução a um aplicativo SaaS multilocatário que usa o padrão de banco de dados por locatário com o Banco de Dados SQL do Azure
Aplica-se a: Banco de Dados SQL do Azure
O aplicativo SaaS Wingtip é um exemplo de aplicativo multilocatário. O aplicativo usa o padrão de aplicativo SaaS de um banco de dados por locatário para atender a vários locatários. O aplicativo demonstra recursos do Banco de Dados SQL do Azure que habilitam cenários de SaaS usando vários padrões de design e gerenciamento de SaaS. Para obter rapidamente e executar, o aplicativo Wingtip SaaS é implantado em menos de cinco minutos.
O código-fonte do aplicativo e os scripts de gerenciamento estão disponíveis no repositório WingtipTicketsSaaS-DbPerTenant do GitHub. Antes de começar, veja as diretrizes gerais para obter as etapas a fim de fazer o download e desbloquear os scripts SaaS do Wingtip Tickets.
Arquitetura do aplicativo
O aplicativo de SaaS Wingtip usa o modelo de banco de dados por locatário. Ele usa pools elásticos do SQL para maximizar a eficiência. Para provisionar e mapear locatários para os seus dados, é usado um banco de dados do catálogo. O aplicativo SaaS Wingtip principal, usa um pool com três locatários de exemplo, além do banco de dados do catálogo. Os servidores de catálogo e locatário foram provisionados com aliases DNS. Esses aliases são usados para manter uma referência aos recursos ativos usados pelo aplicativo Wingtip. Esses aliases são atualizados para apontar para recursos de recuperação nos tutoriais de recuperação de desastre. A conclusão de muitos dos tutoriais de SaaS do Wingtip resulta em complementos para a implantação inicial. Complementos, como bancos de dados analíticos e gerenciamento de esquemas entre bancos de dados, são apresentados.
Ao percorrer os tutoriais e trabalhar com o aplicativo, tenha em mente os padrões de SaaS como eles se relacionam com a camada de dados. Em outras palavras, concentre-se na camada de dados e não na análise excessiva do aplicativo em si. É fundamental reconhecer a implementação desses padrões de SaaS para a implementação desses padrões em seus aplicativos. Também considere todas as modificações necessárias para suas necessidades de negócios específicas.
Tutoriais do SaaS Wingtip do Banco de Dados SQL
Depois de implantar o aplicativo, explore a seguinte coleção de tutoriais que aproveitam a implantação inicial. Esses tutoriais exploram padrões comuns de SaaS que aproveitam os recursos internos do Banco de Dados SQL, do Azure Synapse Analytics e outros serviços do Azure. Os tutoriais incluem scripts do PowerShell com explicações detalhadas. As explicações simplificam a compreensão e a implementação dos mesmos padrões de gerenciamento de SaaS em seus aplicativos.
Tutorial | Descrição |
---|---|
Diretrizes e dicas para o exemplo de aplicativo SaaS de multilocatário do Banco de Dados SQL | Baixe e execute scripts do PowerShell para preparar as partes do aplicativo. |
Implantar e explorar o aplicativo SaaS Wingtip | Implantar e explorar o aplicativo SaaS Wingtip com sua assinatura do Azure. |
Provisionar e catalogar locatários | Saiba como o aplicativo se conecta aos locatários usando um banco de dados do catálogo, e como o catálogo mapeia locatários para seus dados. |
Monitorar e gerenciar o desempenho | Saiba como usar os recursos de monitoramento do Banco de Dados SQL e definir alertas quando os limites de desempenho são excedidos. |
Monitorar com os logs do Azure Monitor | Saiba mais sobre como usar os logs do Azure Monitor para monitorar grandes quantidades de recursos, em vários pools. |
Restaurar um único locatário | Saiba como restaurar um banco de dados de locatário em um ponto anterior no tempo. Também saiba como restaurar um banco de dados paralelo, o que deixa o banco de dados existente do locatário online. |
Gerenciar o esquema de banco de dados do locatário | Saiba como atualizar o esquema e atualizar dados de referência, em todos os bancos de dados de locatários. |
Executar consultas distribuídas entre locatários | Crie um banco de dados de análise ad hoc e execute consultas distribuídas em tempo real em todos os locatários. |
Executar análise em dados extraídos de locatário | Extraia dados de locatário em um análise banco de dados ou data warehouse para consultas analíticas offline. |