Asynchronous vs Parallel Bash Processes
Terminus is a process-driven, Symfony console application that implements cURL requests using PHP in the background to the Terminus API. There are some performance bottlenecks in the current implementation:
- Core (and contributed plugin)
massfunctions run commands serially, looping over a list of sites, and waiting for each site process to complete.
- Terminus API implements request timeouts when too many requests are submitted at once (but does provide automated retries).
- Terminus doesn't have a good dependency management system when creating new plugins.