in src/vw-serving/src/vw_serving/serve.py [0:0]
def _post_worker_init(worker):
"""
Gunicorn server hook http://docs.gunicorn.org/en/stable/settings.html#post-worker-init
:param worker:
"""
# Model is being loaded per worker because each worker communicates through PIPE with the VW C++ CLI
try:
if ScoringService.LOG_INFERENCE_DATA:
import redis
if ScoringService._redis_client is None:
ScoringService._redis_client = redis.Redis()
ScoringService.app.logger.info("Initiated redis client!")
except Exception as e:
sdk_error = convert_to_algorithm_error(e)
ScoringService._report_sdk_error(sdk_error)
sys.exit(sdk_error.exit_code)
try:
ScoringService.get_model()
ScoringService._model.start()
except Exception as e:
sdk_error = convert_to_algorithm_error(e)
ScoringService._report_sdk_error(sdk_error)
sys.exit(sdk_error.exit_code)