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á.
O uso doAWS LambdaCom o Amazon RDS
Você pode conectar uma função do Lambda a um banco de dados do Amazon Relational Database Service (Amazon RDS) diretamente e por meio de um Amazon RDS Proxy. As conexões diretas são úteis em cenários simples e os proxies são recomendados para produção. Um proxy de banco de dados gerencia um pool de conexões de banco de dados compartilhadas, o que permite que sua função atinja altos níveis de simultaneidade sem esgotar as conexões de banco de dados.
Recomendamos o uso do Amazon RDS Proxy para funções do Lambda que fazem conexões curtas e frequentes com o banco de dados ou que abrem e fecham um grande número de conexões de banco de dados.
Configurar a função
No console do Lambda, você pode configurar e até mesmo criar determinadas instâncias de banco de dados e recursos de proxy. Consulte Bancos de dados do RDS em Configuração. Como alternativa, você também pode criar e configurar conexões com funções do Lambda no console do Amazon RDS.
-
Para se conectar a um banco de dados, a função deve estar na mesma Amazon VPC em que o banco de dados é executado.
-
Você pode usar bancos de dados do Amazon RDS com mecanismos MySQL, MariaDB, PostgreSQL ou Microsoft SQL Server.
-
Você também pode usar clusters de banco de dados do Aurora com mecanismos MySQL ou PostgreSQL.
-
Você precisa fornecer um segredo do Secrets Manager para a autenticação do banco de dados.
-
Um perfil do IAM deve fornecer permissão para usar o segredo e uma política de confiança deve permitir que o Amazon RDS assuma o perfil.
O Amazon RDS cobra uma taxa horária por proxies com base no tamanho da instância do banco de dados. Consulte Preço do RDS Proxy
Configuração do Lambda e do Amazon RDS
Os consoles do Lambda e do Amazon RDS ajudarão você a configurar automaticamente alguns dos recursos necessários para fazer uma conexão entre o Lambda e o Amazon RDS.
Processar notificações de eventos do Amazon RDS
Você pode usar o Lambda para processar notificações de eventos em um banco de dados do Amazon RDS. O Amazon RDS envia notificações para um tópico do Amazon Simple Notification Service (Amazon SNS), que você pode configurar para invocar uma função do Lambda. O Amazon SNS envolve a mensagem do Amazon RDS em seu próprio documento de evento e a envia para sua função.
Para obter mais informações sobre como configurar um banco de dados do Amazon RDS para enviar notificações, consulte Trabalhar com a notificação de eventos do Amazon RDS.
exemplo Mensagem do Amazon RDS em um evento do Amazon SNS
{ "Records": [ { "EventVersion": "1.0", "EventSubscriptionArn": "arn:aws:sns:us-east-2:123456789012:rds-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "EventSource": "aws:sns", "Sns": { "SignatureVersion": "1", "Timestamp": "2023-01-02T12:45:07.000Z", "Signature": "tcc6faL2yUC6dgZdmrwh1Y4cGa/ebXEkAi6RibDsvpi+tE/1+82j...65r==", "SigningCertUrl": "https://sns.us-east-2.amazonaws.com/SimpleNotificationService-ac565b8b1a6c5d002d285f9598aa1d9b.pem", "MessageId": "95df01b4-ee98-5cb9-9903-4c221d41eb5e", "Message":
"{\"Event Source\":\"db-instance\",\"Event Time\":\"2023-01-02 12:45:06.000\",\"Identifier Link\":\"https://console.aws.amazon.com/rds/home?region=eu-west-1#dbinstance:id=dbinstanceid\",\"Source ID\":\"dbinstanceid\",\"Event ID\":\"http://docs.amazonwebservices.com/AmazonRDS/latest/UserGuide/USER_Events.html#RDS-EVENT-0002\",\"Event Message\":\"Finished DB Instance backup\"}",
"MessageAttributes": {}, "Type": "Notification", "UnsubscribeUrl": "https://sns.us-east-2.amazonaws.com/?Action=Unsubscribe&SubscriptionArn=arn:aws:sns:us-east-2:123456789012:test-lambda:21be56ed-a058-49f5-8c98-aedd2564c486", "TopicArn":"arn:aws:sns:us-east-2:123456789012:sns-lambda", "Subject": "RDS Notification Message" } } ] }
Tutorial sobre Lambda e Amazon RDS
Usar uma função do Lambda para acessar um banco de dados do Amazon RDS: no Guia do usuário do Amazon RDS, saiba como usar uma função do Lambda para gravar dados em um banco de dados do Amazon RDS por meio do Amazon RDS Proxy. A função do Lambda lerá registros de uma fila do Amazon SQS e gravará novos itens em uma tabela no banco de dados sempre que uma mensagem for adicionada.