一个基金管理系统 , 基于 Tornado , 构建一个成熟的 Tornado 脚手架
技术栈 : Tornado + MySQL + MongoDB + Redis + Celery + Nginx + Supervisor
联系我一起交流 , QQ : 547903993 , QQ群 : 590092348
-
Tornado封装 : 配置 , 日志 , API -
MySQL异步化 : Peewee + Peewee-async -
MongoDB异步化 : mongoengine + motor -
Redis异步化 : aioredis -
Celery支持 , 异步任务与定时任务 -
Supervisor部署 - 详细请求日志
-
API监控 -
ES全文搜索 -
Docker - 考虑
executor提升为类属性
- 登录 , 注册
- 基金交易记录
- 基金实时数据监控 , 收益计算
- 自选基金
- 基金排行
- 基金实时交易模拟
fund ├── api │ ├── fund 基金相关API │ ├── users 用户相关API │ └── status 状态码 ├── apps │ ├── fund 基金相关Model │ └── users 用户相关Model ├── base Tornado App 封装 │ └── db 数据库等异步化 ├── cache 缓存相关 ├── celerys Celery相关 │ ├── crontabs 定时任务 │ ├── tasks 异步任务 │ └── server Celery入口 ├── deploy 部署相关文件 ├── docs API文档相关 ├── document 脚手架设计参考 ├── lib 库 ├── script 项目相关脚本 ├── utils 工具包 ├── build.py 打包加密脚本 ├── config.py 配置文件 ├── manage.py 数据库迁移相关 └── run.py 项目启动文件 切换到项目根目录
$ python run.py记得配置好数据库相关配置, 以及数据表迁移哟~
# Linux 后台启动 $ nohup python3 run.py > run.log 2>&1 &# 先启动 Celery Beat $ celery beat -A celerys.server --loglevel=info # 后启动 Celery Worker $ celery worker -A celerys.server --loglevel=infoNginx安装位置 : /usr/locl/nginx
启动 : /usr/local/sbin/nginx -c /usr/local/nginx/conf/nginx.conf
重启 : /usr/local/sbin/nginx -s reload
启动Supervisor : supervisord -c /mydata/projects/fund/deploy/supervisor/default.conf
启动Tornado服务 : supervisorctl start fund
重启Tornado服务 : supervisorctl restart fund
先安装 pipreqs
$ pip install pipreqs更新 requirements.txt
$ pipreqs . --force