Atualmente, tenho uma função em lambda que, quando invocada, envia uma mensagem para um usuário que a invocou. 2 dias depois, gostaria de enviar uma mensagem de acompanhamento. Todo o código para enviar a mensagem real funciona bem.
Estou usando o Lambda devido às habilidades de dimensionamento automático e, idealmente, quero evitar a necessidade de configurar um banco de dados separado para armazenar o userId, carimbo de data/hora da interação original (para que eu possa calcular o tempo de acompanhamento) e seguir mensagem para 2 dias depois. A razão para isso é devido ao dimensionamento, pois não tenho certeza de quando os picos ocorrerão. Este é um projeto de estrutura curta, mas espera alto envolvimento, mas em horários variados e desconhecidos.
Inicialmente pensei no SNS para chamar outra função lambda com os dados, no entanto, descobri desde então que o SNS não oferece suporte a mensagens agendadas. Idealmente, eu também gostaria de não envolver a votação de outro serviço. Existem boas soluções para isso?
Sei que não usar um banco de dados é uma forte limitação e se tiver que usar um, usarei um, mas ainda assim não ter que pesquisar seria útil (acho que poderia agendar uma função lambda e criar um índice no timestamp em dynamodb)