From 7b1c2aff78a4e8f5e6f508b8e6b1b7411be877bc Mon Sep 17 00:00:00 2001 From: Christopher Rhodes <christopher.rhodes@embl.de> Date: Mon, 8 Jan 2024 12:14:11 +0100 Subject: [PATCH] Added retry mechanism to status confirmation, to address suspect timeout problem --- README.md | 7 +++---- model_server/scripts/run_server.py | 10 +++++++++- 2 files changed, 12 insertions(+), 5 deletions(-) diff --git a/README.md b/README.md index fddf05b7..eb03b1da 100644 --- a/README.md +++ b/README.md @@ -10,10 +10,9 @@ model_server implement image analysis jobs for online use (e.g. in feedback micr `cd %userprofile%`<br> `git clone https://almf-staff:KJmFvyPRbpzoVZDqfMzV@git.embl.de/rhodes/model_server.git` 5. Open the newly created project root: `cd model_server` -6. Create the environment: `mamba create -n model_server_env --override-channels -c pytorch -c ilastik-forge -c conda-forge ilastik` -7. In the same terminal, run: `mamba init` -8. Now close and re-open the terminal: `Miniforge3 > Miniforge Prompt` -9. Now activate the environment: `mamba activate model_server_env` +6. Create the environment: `mamba env create --file requirements.yml --name model_server_env` +7. Activate the environment: `mamba activate model_server_env` +8. # Examples diff --git a/model_server/scripts/run_server.py b/model_server/scripts/run_server.py index 1b0339bf..6b8ad33d 100644 --- a/model_server/scripts/run_server.py +++ b/model_server/scripts/run_server.py @@ -1,6 +1,8 @@ import argparse from multiprocessing import Process import requests +from requests.adapters import HTTPAdapter +from urllib3 import Retry import uvicorn import webbrowser @@ -48,7 +50,13 @@ if __name__ == '__main__': server_process.start() try: - resp = requests.get(url) + sesh = requests.Session() + retries = Retry( + total=5, + backoff_factor=0.1, + ) + sesh.mount('http://', HTTPAdapter(max_retries=retries)) + resp = sesh.get(url) assert resp.status_code == 200 except Exception: print('Error starting server') -- GitLab