I'm having serious issues with running a particular workflow that needs to deal with 1000s of operations.
Given that workflows do not have a queueing mechanism, all requests come at once and get processed all at once. The database is becoming a serious bottleneck.
Interesting use case. I have a couple ideas for how might be able to get around this performance bottleneck.
A lot of the customization to handle heavier traffic can be done for self hosted Retool users.
Let me know if you are self hosting and what deployment method you used. The method of your deployment will help us to figure out where the variables live that we can toggle to adjust the servers/containers that are handling your workflows
For users on the cloud, there are some best practices for breaking up workflow blocks and spreading out the logic to better spread out the compute load.
Methods such as setting timeouts, chunking/batching data and using best practices for query can all help out a ton. Read more about that on our docs here as well as workflow limits on our docs here. These will all help with performance and logic inside your workflows for running 1000s of operations
It sounds like your issue might also be with the webhook trigger as an entry point into your workflows. This could be something that can be better controlled with a load balancer on your server, although setting this up would only possible for self hosted users and the technical specifics be outside of Retool's support capabilities.
Having more servers to handle incoming traffic of API requests could be a solution to the bottle neck of all the requests coming in to a single Workflow server. Check out our docs here on scaling up Retool. If the issue is your database, there are some options as well for how to scale those up. I would likely need more details on what aspect of database usage is becoming the bottleneck and how you have those DBs set up and deployed to best help