radiasoft / sirepo

Sirepo is a framework for scientific cloud computing. Try it out!
https://sirepo.com
Apache License 2.0
63 stars 31 forks source link

asynchronous analysis jobs #4157

Open robnagler opened 2 years ago

robnagler commented 2 years ago

An analysis job should be two parts: start and status, like sequential and parallel. We could perhaps hold the request for a short time (100ms) and then return, but we are locking up a thread unnecessarily. Some analysis jobs will take a long time to run. In that sense, they are just sequential jobs followed by a download data file.

We could build a shim for some codes so they don't have to change.

e-carlin commented 2 years ago

https://github.com/radiasoft/sirepo/issues/2435 is related. We need to right the code for both in such a way that we don't wait on resources while holding the flask request open.

I imagine error handling (raising of Exceptions) will need to be modified for both