Criar arquiteturas orientadas a eventos com o Eventarc
É possível usar o Eventarc e o Firestore com compatibilidade com o MongoDB para criar arquiteturas orientadas a eventos. Os gatilhos do Firestore com compatibilidade com o MongoDB para o Eventarc geram eventos com base em mudanças em documentos específicos no seu banco de dados. O gatilho pode rotear eventos para um destino compatível:
- Funções do Cloud Run (2ª geração) que oferecem suporte às bibliotecas de cliente do Cloud e ao SDK do Firebase
- Cloud Run
- Google Kubernetes Engine
- Workflows
Eventarc oferece uma solução padronizada para gerenciar o fluxo de alterações de estado, chamadas de eventos, entre microsserviços separados. Quando acionado, o Eventarc encaminha esses eventos para vários destinos, gerenciando a entrega, a segurança, a autorização, a observabilidade e o tratamento de erros para você.
Limitações
Observe as seguintes limitações para acionadores do Firestore com compatibilidade com o MongoDB para o Eventarc:
- Não garantimos acionamentos em ordem. Mudanças rápidas podem acionar eventos em uma ordem inesperada.
Os eventos são entregues pelo menos uma vez.
Verifique se o manipulador de eventos é idempotente e evite produzir resultados inesperados ou efeitos colaterais quando um evento é entregue mais de uma vez. Consulte Como criar funções idempotentes para saber mais.
Um gatilho está associado a um único banco de dados. Não é possível criar um gatilho que corresponda a vários bancos de dados.
A exclusão de um banco de dados não remove automaticamente nenhum gatilho dele. O acionador deixa de entregar eventos, mas continua existindo até que você o exclua. Se o banco de dados for recriado, todos os gatilhos associados também precisarão ser excluídos e recriados para restaurar a entrega de eventos.
O Firestore com compatibilidade com o MongoDB é compatível com o Cloud Run functions (2ª geração), mas não com o Cloud Run functions (1ª geração).
Os bancos de dados da edição Enterprise do Firestore não são compatíveis com os tipos de eventos de entidade do Datastore.
Documentos maiores que 10 MiB não são incluídos no payload do evento. Para recuperar o documento com controle de versões, use um tempo de leitura de recuperação pontual.
A seguir
- Saiba mais sobre arquiteturas orientadas a eventos.