Sdap 268: asynchronous request management#107
Open
tloubrieu-jpl wants to merge 26 commits intomasterfrom
Open
Conversation
24ff296 to
48da694
Compare
bb6490e to
9fa5a80
Compare
… end-points (...Spark for legacy, or algorithm/...) create handler manager to have multiple endpoint for the same algorithm implement a demo asynchronous mode in the restapi remove pydataclasses dependency
9fa5a80 to
142ce38
Compare
Contributor
Author
|
@ngachung @jjacob7734, I often have issues with 504 error on SDAP bigdata and when it happens, I need to wait for SDAP to consume all the requests I previously sent (through a parallelized script) before I resend a more reasonable series of requests. Do you have the same experience ? I was thinking 1) this is consuming a lot a computing resources for nothing and 2) we don't have a way to insure that the client can get a response from SDAP. So I was thinking that could be helpful to move forward with this pull request, since that would enable to get the SDAP request results whatever the duration of the processing. That being said I don't remember the exact status of the development and now there are conflicts with the current dev. Thanks |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
added the fair scheduling option in spark (tested on podaac-devk8s, one big request launched first, small request second, second result comes first, see test code https://github.com/tloubrieu-jpl/sdap_nexus_tests/)
added NexusHandlerManager to manage different end-points for a single algorthim. The demonstrate that with:
add asynchronous management on the API, after given time (hard code for now), request sends back 202 status and a job id. The job status and eventually the job result can be found from url /jobs/<job_id>
The webapp docker image is available on https://hub.docker.com/repository/docker/tloubrieu/nexus-webapp