| 1234567891011121314151617181920212223242526 |
- import sys
- import uvicorn
- import signal
- from api import *
- from sockets.socket_server import *
- def handle_shutdown(signum, frame):
- """关闭系统应用服务"""
- # 终止事件循环
- loop = asyncio.get_event_loop()
- loop.call_soon_threadsafe(loop.stop)
- sys.exit(0)
- if __name__ == "__main__":
- signal.signal(signal.SIGINT, handle_shutdown)
- signal.signal(signal.SIGTERM, handle_shutdown)
- # 控制台默认关闭输出信息,如果想要查看控制台输出,请单独启动服务 npm run dev-python
- print("python server is running at port:", PORT)
- # uvicorn会多创建一个进程,并且stdio独立于控制台,如果(开发时)出现进程没有关闭,可尝试关闭终端
- uvicorn.run(
- APP_RUN,
- host=APP_HOST,
- port=int(PORT),
- reload=False,
- workers=int(APP_WORKS),
- )
|