uvicorn 启动重复加载 多次加载
目录
uvicorn 启动重复加载 多次加载
解决方法1:
解决方法2:
uvicorn 启动重复加载 多次加载
fastapi_aa 是当前类
解决方法1:
import uvicornfrom fastapi import FastAPIapp = FastAPI()if __name__ == "__main__":if sys.gettrace() is not None or os.getenv("RUN_MODE") == "debug":uvicorn.run(app=app, host="0.0.0.0", port=45503, workers=1, reload=False)else:uvicorn.run(app="fastapi_aa:app", host="0.0.0.0", port=45503, workers=1, reload=True)
解决方法2:
from prometheus_client import Counter, generate_latest, CollectorRegistry, multiprocess, CONTENT_TYPE_LATEST, make_asgi_app, Gaugeregistry = CollectorRegistry()
# 定义 Prometheus 指标
CALL_COUNT = Counter("live_asr_method_calls_total_part3", "part3 Total number of method calls",["method", "status"],registry=registry
)registry_1 = CollectorRegistry(auto_describe=True)@app.get("/metrics")
def metrics():return Response(generate_latest(registry), media_type="text/plain")# @app.get('/metrics', response_class=Response)
# async def make_metrics_app():
# logger.info(f"call get metrics")
# registry = CollectorRegistry()
# multiprocess.MultiProcessCollector(registry)# metrics_data = generate_latest(registry)
# return Response(content=metrics_data, media_type=CONTENT_TYPE_LATEST)