pointapi/main.py
2021-03-31 11:58:40 +08:00

36 lines
877 B
Python

import uvicorn
from aioredis import create_redis_pool
from fastapi import FastAPI
from routers import point
from settings import settings
from utils.ta_sdk import TGAnalytics, ToKafka
app = FastAPI()
def register_redis(app: FastAPI) -> None:
@app.on_event('startup')
async def startup_event():
app.state.redis = await create_redis_pool(**settings.REDIS_CONF)
@app.on_event('shutdown')
async def shutdown_event():
app.state.redis.close()
await app.state.redis.wait_closed()
def register_ta(app: FastAPI) -> None:
@app.on_event('startup')
def startup_event():
app.state.ta = TGAnalytics(ToKafka(settings.KAFKA_CONF))
app.include_router(point.router, prefix='/v1')
register_redis(app)
register_ta(app)
if __name__ == '__main__':
uvicorn.run(app='main:app', host="0.0.0.0", port=6666, reload=True, debug=True)