def _post_worker_init()

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)