As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.
Resultados de negócios desejados
Esta seção discute os seguintes resultados de negócios:
-
Aumento da escalabilidade de aplicações
-
Aumento da performance de aplicações
-
Aumento da disponibilidade de aplicações
-
Aumento da segurança de aplicações
-
Diminuição da complexidade operacional
Aumento da escalabilidade de aplicações
A escalabilidade de uma aplicação depende da capacidade do banco de dados de lidar com conexões simultâneas. O número de conexões simultâneas depende do tipo de instância do banco de dados. Por exemplo, um tipo de instância t3.small pode oferecer suporte a 187 conexões simultâneas de banco de dados. Tentativas adicionais de conexão do cliente com o banco de dados resultarão em uma falha. O uso de um endpoint Amazon RDS Proxy para interagir com o banco de dados permite que a aplicação continue funcionando mesmo quando as conexões necessárias para o cliente excedam o máximo de conexões aceitas pelo tipo de instância, conforme mostrado no diagrama a seguir.

Como o RDS Proxy usa o grupo de conexões, uma aplicação de teste usando um endpoint do RDS Proxy conseguiu escalar para 20.000 conexões de clientes, mesmo quando a instância do banco de dados estava limitada a 187 conexões simultâneas.
O Amazon RDS Proxy é um componente valioso em uma arquitetura que precisa ser escalada.
Aumento da performance de aplicações
Conexões ociosas são conexões de banco de dados que não estão processando nenhuma transação, mas ainda estão usando memória e CPU no servidor de banco de dados. Uma sessão de cliente ociosa com uma transação aberta também impedirá que o processo de autovacuum limpe tuplas mortas. As tuplas mortas causarão inchaço nas tabelas do banco de dados, resultando em uma desaceleração das consultas SQL. Um banco de dados Amazon RDS para PostgreSQL mantém as conexões ociosas abertas 24 horas por padrão (definido pelo parâmetro idle_in_transaction_session_timeout
).
O RDS Proxy gerencia ativamente as conexões ociosas fechando-as se elas permanecerem inativas por mais de 30 minutos por padrão (definido pelo IdleClientTimeoutparâmetro). Limpar mais cedo as sessões ociosas junto com os recursos usados por elas reduz o impacto na CPU, na memória e no processo de autovacuum.
O Amazon RDS Proxy gerencia conexões ociosas com eficiência, o que melhora a performance da aplicação.
Aumento da disponibilidade de aplicações
A disponibilidade de uma aplicação depende do tempo de resposta de failover do banco de dados. Durante um failover do banco de dados, a aplicação apresentará erros em transações dinâmicas. Isso reduz a disponibilidade da aplicação para seus usuários finais.
O RDS Proxy reconhece failover do banco de dados. Quando ocorre failover do banco de dados, o RDS Proxy enfileira as solicitações recebidas do lado da aplicação até conseguir criar novas conexões com o banco de dados. Isso ajuda a evitar erros em transações dinâmicas, aumentando assim a disponibilidade da aplicação.
A publicação no blog Melhorar disponibilidade da aplicação com o Amazon RDS Proxy
O Amazon RDS Proxy ajuda a aumentar a disponibilidade da aplicação.
Aumento da segurança de aplicações
Como o RDS Proxy usa TLS/SSL e AWS Identity and Access Management (IAM), ele pode atuar como uma camada adicional de segurança entre os aplicativos cliente e o banco de dados Postgres subjacente. Com o RDS Proxy, você pode usar requisitos de segurança mais fortes (TLS 1.2 e perfis do IAM) para conexões de aplicações com o proxy.
O RDS Proxy pode recuperar as credenciais do banco de AWS Secrets Manager dados e você pode configurar a autenticação do IAM para usuários do RDS Proxy. Ao fazer isso, é possível impor autenticação do IAM para acesso ao banco de dados mesmo que os bancos de dados usem mecanismos de autenticação, como nome de usuário e senha. Isso reduz a necessidade de aplicações gerenciarem credenciais do banco de dados e melhora a postura de segurança da aplicação.
Diminuição da complexidade operacional
Um grupo de conexões deve ser complementado com servidores proxy adicionais para oferecer alta disponibilidade e balanceamento de carga. Essa configuração aumenta a complexidade operacional. Os servidores proxy tradicionais são difíceis de implantar, corrigir e gerenciar. Usá-los consome tempo e energia que poderiam ser melhor gastos no desenvolvimento de produtos.
O Amazon RDS Proxy oferece os benefícios de um proxy de banco de dados sem exigir a carga adicional de corrigir e gerenciar seu próprio servidor proxy. O RDS Proxy não tem servidor e é dimensionado automaticamente para acomodar sua workload. Com sua opção de configuração de autoatendimento, o RDS Proxy pode aumentar a velocidade do desenvolvedor, resultando na entrega mais rápida de novas aplicações.