2017-05-12 11 views
6

Używamy funkcji chmury uruchamianej przez Pub/Sub, aby zapewnić dostarczenie wiadomości e-mail. Czasami usługa e-mail wymaga dużo czasu, a nasza funkcja chmurowa zostaje zakończona, zanim otrzymamy błąd. Ponieważ wiadomość została już potwierdzona, nasza wiadomość e-mail ginie.Google Cloud Functions tylko dla Ack Pub/Sub o sukcesie

Wygląda na to, że funkcja chmury wysyła wiadomość ACK do wiadomości Pub/Sub automatycznie, gdy zostaniemy wywołani. Czy istnieje sposób na opóźnienie ACK do pomyślnego zakończenia naszego kodu? Czy istnieje również sposób na wychwycenie limitów czasu i ponowne przesłanie wiadomości do dostarczenia? Coś innego, co moglibyśmy wypróbować?

Odpowiedz

6

Słyszałem od Google, że obecnie nie zapewnia środków do opóźnienia potwierdzenia, gdy funkcja chmury jest wywoływana przez Pub/Sub. Jeśli chcesz używać funkcji chmurowych w Pub/Sub, musisz samodzielnie zająć się przypadkiem błędu. Na przykład możesz mieć funkcję chmurową z przypomnieniem o ponownej próbie liczenia.

Wydaje się, że niepotrzebnie trudno jest zagwarantować wykonanie z funkcjami Pub/Sub i chmurą.

+0

Dokładny ten sam numer - dzięki za przesłanie odpowiedzi. – Louzoid

+1

to była straszna decyzja projektowa. Powinni zostawić go w funkcji chmury, aby potwierdzić wiadomość. – amohr

+1

A może tylko uznał, że funkcja zakończyła się pomyślnie. –

Powiązane problemy