Alteração do modo de processamento de várias instruções de uma instância de proxy
Ao ativar a execução de várias instruções para uma instância de proxy, você pode definir o modo de processamento de várias instruções como Strict, Loose ou Parse.
- Strict (padrão)
Se uma solicitação contendo várias instruções for roteada para o nó primário, as solicitações subsequentes serão todas roteadas para o nó primário. A separação de leitura/gravação pode ser restaurada somente após você desconectar a conexão atual e reconectá-la.
Sua instância de proxy não analisará essas instruções, portanto, o desempenho é melhor. É adequado para conexões curtas.
- Loose
Se uma solicitação contendo várias instruções for roteada para o nó primário, as solicitações subsequentes da conexão atual ainda poderão ser roteadas para o nó primário ou para réplicas de leitura.
Sua instância de proxy não analisará essas instruções, portanto, o desempenho é melhor. É bom para quando várias instruções contêm apenas instruções SQL DML e não contêm operações como definir variáveis de sessão, criar tabelas temporárias, criar procedimentos armazenados ou executar transações não confirmadas.
- Parse
Uma solicitação somente leitura que contém várias instruções é roteada com base em pesos. Uma solicitação de leitura/gravação contendo várias instruções é roteada para o nó primário, e sua instância de proxy analisa essas instruções e determina se deve dividir as solicitações subsequentes de leitura e gravação recebidas na conexão atual com base nas operações nas instruções SQL (descrição do modo baseado em Parse).
As instruções de análise afetam o desempenho da instância do proxy. O grau do impacto depende do comprimento e da complexidade das instruções. Recomenda-se que as instruções sejam inferiores a 100 MB.
Restrições
- Para configurar o modo de processamento de várias instruções no console de gerenciamento, entre em contato com o atendimento ao cliente.
- O modo de processamento de várias instruções alterado se aplica à instância do proxy imediatamente. Você não precisa reinicializar a instância do proxy. Se uma conexão de separação de leitura/gravação falhar devido a uma execução de várias instruções, alterar o modo de processamento de várias instruções não restaurará a conexão. Você precisará reconectar a conexão manualmente.
- Descrição do modo baseado em Parse:
Se várias instruções contiverem as operações listadas aqui, todas as solicitações subsequentes serão roteadas para o nó primário. Para restaurar a separação de leitura/gravação, você precisa desconectar a conexão e restabelecê-la.
- Criação de tabelas temporárias
- Criação de procedimentos armazenados
- Execução de transações não confirmadas (por exemplo, begin é executado, mas commit ou rollback não é executado)
- Execução de sintaxe complexa ou especial. Essas instruções não serão analisadas.
Procedimento
- Faça logon no console de gerenciamento.
- Clique em
no canto superior esquerdo e selecione uma região e um projeto.
- Clique em
no canto superior esquerdo da página e escolha .
- Na página Instances, clique no nome da instância para acessar a página Basic Information.
- No painel de navegação, escolha Database Proxy.
- Clique no nome de uma instância de proxy para acessar a página Basic Information.
- No painel de navegação, escolha Parameter Modifications.
- Configure o parâmetro multiStatementType conforme necessário.
Figura 1 Configuração do parâmetro multiStatementType
Você pode definir esse parâmetro como Strict, Loose ou Parse.
- Clique em Save para salvar a alteração. Na caixa de diálogo exibida, clique em Yes.