fhir-crucible / crucible

🔥 Crucible web application for testing FHIR servers
77 stars 25 forks source link

Test Runs Not Parallelized? #308

Open pcosmog opened 5 years ago

pcosmog commented 5 years ago

I've deployed crucible on docker and I notice that if I start 2 (lengthy) test runs at the same time, one test run will not begin until the first one completes.

I don't see this problem on the public site: it this because you are deploying multiple instances of either the web or task containers behind a load balancer?

Or is this unexpected behaviour pointing to some configuration or other issue with my deployment?

arscan commented 5 years ago

Hi @pcosmog -- our production instance doesn't use docker. It is on a single VM, but it starts three task runners that execute the actual tests. Our docker configuration only starts a single test runner, and therefore can only run one set of tests at once.

I put up a branch that should increase the number of task runners that docker runs: #309

Could you pull down that branch and see if that configuration better suits your need?

One other note, if you are using this in a long-lived production instance, we also have a cron job that watches for tasks that have stalled. For very large test runs that are hitting servers with a lot of data, we've found our task runners can be a little unreliable. So that watcher job looks out for stalled test jobs and resumes them in a new worker. That isn't currently configured to run in our docker container, but we can look to add that there as well if you are expecting to use this in a non-development environment.