I am very new to Google Cloud Platform, and I am currently making some Cloud Functions in Go. I am wondering if it is possible to for a Cloud Function that is a subscriber to a topic to ignore a message if it is already processing one?
Essentially, my system sends a "done" message at some point, which spins up a Cloud function, I want to make it so that if that topic receives another done message, it doesn't start another subscriber function instance, but ignores the message.
CodePudding user response:
I am not sure it's possible to do that natively with a Cloud Function
.
You can think having a state
to handle this kind of use cases.
For example there is memorystore with Redis
in Google Cloud
to store your received messages.
In your Cloud Function
, you can use a Python
Redis
client to access to cache.
You can add a filter a treat only the messages that doesn't exist in the cache.