Amazon RDS Proxy

Torne suas aplicações mais escaláveis, resilientes e seguras

O Amazon RDS Proxy é um proxy de banco de dados totalmente gerenciado e altamente disponível para o Amazon Relational Database Service (RDS) que torna as aplicações mais escaláveis, resilientes a falhas de banco de dados e seguras.

Diversas aplicações, incluindo as que são desenvolvidas em arquiteturas com tecnologia sem servidor, podem ter um grande número de conexões abertas com o servidor de banco de dados e podem abrir e fechar conexões de banco de dados em uma alta taxa, esgotando a memória do banco de dados e os recursos computacionais. O Amazon RDS Proxy permite que aplicações agrupem e compartilhem conexões estabelecidas com o banco de dados, aprimorando a eficiência e a escalabilidade da aplicação. Com o RDS Proxy, os tempos de failover para bancos de dados do Aurora e do RDS são reduzidos em até 66% e as credenciais, a autenticação e o acesso ao banco de dados podem ser gerenciados por meio da integração com o AWS Secrets Manager e com o AWS Identity and Access Management (IAM).

O Amazon RDS Proxy pode ser habilitado para a maioria das aplicações sem a necessidade de realizar alterações de código. Você não precisa provisionar ou gerenciar infraestruturas adicionais para começar a usar o RDS Proxy. Os preços são simplificados e baseado na capacidade das instâncias de banco de dados subjacentes. Você paga por unidade de capacidade do Aurora (ACU, na sigla em inglês) para instâncias do Amazon Aurora Sem Servidor v2 ou por vCPU para instâncias provisionadas. Amazon RDS Proxy está disponível no Amazon Aurora edição compatível com PostgreSQL, Amazon Aurora edição compatível com MySQL, Amazon RDS para PostgreSQL, Amazon RDS para MySQL, Amazon RDS para MariaDB e Amazon RDS para SQL server.

Introdução para o Amazon RDS Proxy (12:13)

Benefícios do RDS Proxy

A instância do Amazon RDS Proxy mantém um grupo de conexões estabelecidas com as instâncias de banco de dados do RDS, reduzindo o estresse nos recursos de memória e de computação do banco de dados que, normalmente, ocorre quando novas conexões são estabelecidas. O RDS Proxy também compartilha conexões de banco de dados que são usadas com pouca frequência, de modo que menos conexões acessam o banco de dados do RDS. Esse grupo de conexões possibilita que o banco de dados ofereça suporte com eficiência para um grande número e uma alta frequência de conexões de aplicações. Dessa maneira, sua aplicação pode ser escalada sem comprometer a performance.
O RDS Proxy minimiza a interrupção de aplicações devido a indisponibilidades que afetam a disponibilidade do banco de dados ao se conectar automaticamente a uma nova instância de banco de dados enquanto preserva as conexões da aplicação. Quando ocorrem failovers, o RDS Proxy roteia as solicitações diretamente para a nova instância de banco de dados. Isso reduz os tempos de failover para os bancos de dados do Aurora e do RDS em até 66%. O RDS Proxy também oferece suporte para Multi-AZ com dois modos de espera legíveis para failovers normalmente inferiores a 35 segundos, latência de gravação duas vezes maior, capacidade de leitura adicional e redução do tempo de inatividade do upgrade de versões secundárias para normalmente menos de 1 segundo.
O Amazon RDS Proxy oferece controle adicional sobre a segurança dos dados ao disponibilizar a opção de aplicar a autenticação do IAM para o acesso ao banco de dados e evitar a codificação de credenciais de banco de dados no código da aplicação. O RDS Proxy também possibilita que você gerencie as credenciais de banco de dados de forma centralizada usando o AWS Secrets Manager.
Um servidor proxy de banco de dados ajuda a lidar com a sobrecarga adicional em seu banco de dados. Embora os servidores proxy tradicionais permitam que as aplicações sejam escaladas com mais eficiência, eles são difíceis de implantar, aplicar patches e gerenciar, pois consomem tempo e energia que poderiam ser melhor dedicados no desenvolvimento de excelentes produtos. O Amazon RDS Proxy oferece a você os benefícios de um proxy de banco de dados sem requerer sobrecarga adicional de aplicação de patches e de gerenciamento do seu servidor proxy. O RDS Proxy usa uma tecnologia totalmente sem servidor e é escalado automaticamente para acomodar sua workload.
O Amazon RDS Proxy é totalmente compatível com os protocolos dos mecanismos de banco de dados com suporte, portanto, você pode implantar o RDS Proxy em sua aplicação sem a necessidade de fazer alterações no código da aplicação. Basta você direcionar as conexões da aplicação para o proxy em vez de para o banco de dados do RDS, e o resto é gerenciado sem complicações.

Como funciona

O Amazon RDS Proxy está entre a aplicação e o banco de dados relacional com a finalidade de gerenciar com eficiência as conexões com o banco de dados e aprimorar a escalabilidade da aplicação.

Como funciona o Amazon RDS Proxy

Casos de uso

Desenvolvimento de aplicações com tecnologia sem servidor

Com o Amazon RDS Proxy, você pode desenvolver aplicações com tecnologia sem servidor que são mais escaláveis ​​e disponíveis porque usam os bancos de dados relacionais com mais eficiência. As aplicações modernas com tecnologia sem servidor oferecem suporte para workloads altamente variáveis ​​e podem tentar abrir uma série de novas conexões de banco de dados ou manter diversas conexões abertas, mas em estado ocioso. Um aumento repentino de conexões ou um grande número de conexões abertas pode sobrecarregar o servidor de banco de dados, causando lentidão para as consultas e escalabilidade limitada para a aplicação. Ao agrupar e compartilhar conexões de banco de dados já estabelecidas, o RDS Proxy permite que você escale para muitas outras conexões usando a aplicação com tecnologia sem servidor. O RDS Proxy também possibilita que você mantenha a performance previsível do banco de dados ao controlar o número total de conexões de banco de dados que são abertas. Por fim, o RDS Proxy preserva a disponibilidade da aplicação com tecnologia sem servidor ao negar conexões de aplicações inoperantes que podem prejudicar a performance do seu banco de dados.

Aplicações de software como serviço (SaaS) e de comércio eletrônico

As aplicações de SaaS ou de comércio eletrônico, geralmente, mantêm um grande número de conexões de banco de dados abertas para garantir tempos de resposta rápidos ao usuário, embora somente uma fração dessas conexões abertas possa ser usada ativamente em um determinado momento. Essas conexões abertas, mas ociosas, continuam a consumir memória do banco de dados e recursos computacionais. Em vez de realizar o provisionamento excessivo para o seu banco de dados com a finalidade de oferecer suporte à maioria das conexões ociosas, é possível usar o RDS Proxy para manter as conexões ociosas da aplicação enquanto estabelece somente as conexões de banco de dados necessárias para atender às solicitações ativas de maneira ideal.

Explore mais casos de uso nas perguntas frequentes