Over 10 years we help companies reach their financial and branding goals. Engitech is a values-driven technology agency dedicated.

Gallery

Contacts

411 University St, Seattle, USA

engitech@oceanthemes.net

+1 -800-456-478-23

AlwaysOn

Roteamento somente leitura para um grupo de disponibilidade Always On

Bem-vindo ao nosso tutorial sobre o Read-Only Routing (Roteamento Somente Leitura) para um Availability Group (Grupo de Disponibilidade) no SQL Server. Neste guia, você aprenderá sobre uma das funcionalidades mais importantes e poderosas oferecidas pelo SQL Server: a capacidade de rotear automaticamente conexões de leitura para réplicas somente leitura em um ambiente de alta disponibilidade.
Dentro de um Availability Group, temos as réplicas, que podem ser primária ou secundária. A réplica primária é responsável por processar as operações de gravação, enquanto as réplicas secundárias podem ser configuradas para operações de leitura, o que distribui a carga de trabalho e aumenta o desempenho geral do sistema.

No entanto, quando temos demanda de relatórios, planilhas de excel ou até mesmo um BI, surge a necessidade de direcionar adequadamente as conexões de leitura para essas réplicas somente leitura. É aí que entra o Read-Only Routing, uma funcionalidade que permite aos clientes serem automaticamente direcionados para uma réplica secundária para operações de leitura, otimizando o uso dos recursos disponíveis.

Neste tutorial, vamos aprender como configurar o Read-Only Routing para o seu Availability Group no SQL Server, possibilitando um ambiente de alta disponibilidade, distribuição de carga de trabalho eficiente e melhor utilização dos recursos do seu sistema.

Antes de prosseguir, é importante ter uma compreensão básica do SQL Server, conceitos de Availability Group e sua configuração. Vamos assumir que você já possui um ambiente de Availability Group em funcionamento e está pronto para aprimorá-lo com o Read-Only Routing.

Na propriedade do “Availability Group” é necessário efetuar a configuração do “Readable Secondary = Read-intent only”

O próximo passo é efetuar a configuração no menu “Read-Only Routing”, nesta etapa é necessário que seja informado a URL de roteamento de somente leitura de cada réplica.

É necessário informar qual a porta que conexão da instância SQL Server será utilizada , é possível utilizar a porta “TCP Port e a TCP Dynamic Ports”.

Segue o exemplo de uma configuração de “Read-Only Routing URL” que é a URL de roteamento de somente leitura e também é necessário a configuração do “Read-Only Routing List” no exemplo quando o réplica “DBS0010AG\PRD” estiver como primário a lista de roteamento de leitura será direcionada para o réplica “DBS0011AG\PRD” e caso esta réplica não esteja disponível no momento o usuário será redirecionado para o própria réplica primária e assim vice e versa para as demais réplicas.

Em sua aplicação por exemplo um ERP a string de conexão para conexão ao banco de dados deve ser informado o IP/PORTA configurados no LISTENER pois assim a conexão será redirecionada para a réplica que estiver como primária no momento da conexão.

Na imagem abaixo temos a propriedade do Listener.

Vamos utilizar como exemplo a aplicação “Microsoft SQL Server Management Studio” conectando no IP/Porta do Listener, neste caso a conexão será redirecionada para a réplica primária do grupo de disponibilidade, sendo possível efetuar escrita/leitura do banco de dados.

Na imagem abaixo é possível visualizar o resultado da query para obter o nome do host/instance conectado e podemos ver a réplica “DBS0010AG\PRD” no qual está como PRIMÁRIA.

No caso de acessar o banco de dados utilizando a configuração de roteamento de somente leitura é necessário informar o IP/PORTA e adicionar um parâmetro no menu “Options>>” em “Additional Connection Parameters” o texto a ser inserido é :
ApplicationIntent=ReadOnly;Initial Catalog=Nome_do_Database

Na imagem abaixo é possível visualizar o resultado da query para obter o nome do host/instance conectado e podemos ver a réplica “DBS0011AG\PRD” no qual está como SECUNDÁRIA.

O Read-Only Routing no SQL Server permite direcionar automaticamente conexões de leitura para réplicas secundárias em um Availability Group. Isso melhora a distribuição de carga, a disponibilidade e o desempenho do sistema. Ao configurar corretamente o Read-Only Routing, você pode otimizar seu ambiente, tornando-o mais eficiente e resiliente em cenários de alto tráfego. Lembre-se sempre de entender suas necessidades específicas e ponderar sobre as regras de roteamento para obter o máximo de benefícios.

Até o próximo post!

Author

Wesley Cardoso