We'd like to make the chromium-render service ready for production and stress testing by making the service robust.
Taken from @mobrovac's comments at T176627#3691956.
A/C
- Every request should spawn a new headless Chromium instance;
- time-boxed execution: there should be strong guarantees that a given Chromium render cycle (i.e. the sub-process' life) will not last longer than X seconds (configurable)
- number of spawned Chromium instances: the service should track the number of currently-opened Chromium instances and not allow a configured maximum of them to be spawned; should there be a request waiting to be fulfilled, it should be postponed until such time as an instance slot becomes available or rejected if the maximum amount of wait time has elapsed.
Sign off notes are here: T178501#3792086