We are currently using Rabbit MQ with Celery on some VMs for this:
So we have the requirements:
Now we try to use Google Cloud for this and we would like to move away from VMs to something like Google Cloud Tasks or Pub / Sub in combination with Google Cloud Functions. Is there any best practice setup for our problem in Google Cloud?
I think you need an architect to re-design your solution to lift in the cloud. It is good time to check whether you want to move to managed products or would prefer just the same in the cloud.
Talking about the products:
Don't rush and pick a solution. It is well worth to check all your business and technical requirements and explore the benefits of each product (managed or not) of the Google Cloud. The more detailed your requirements are, the best you can design your solution.
Google Cloud offers, today, only one workflow manager named Cloud Composer (based on Apache Airflow project ) ( I don't take into account the AI Platform workflow manager ( AI Pipeline ) ). This managed solution allow you to perform the same things than you do today with Celery
2 warnings:
Note: A new workflow product should come on GCP. No ETA for now, and at the beginning the parallelism want be managed. IMO, this solution is the right one for you, but not for short term, maybe in 12 months
About the MQTT queue, you can use PubSub , very efficient and affordable.
Alternative
You can build your own system following this process
We have implemented a similar workflow in my company. But it's not easy to maintain and to debug when a problem occur. Else, it works great.
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.