C/S架构的应用程序开发实战(二)
2021/9/6 17:07:28
本文主要是介绍C/S架构的应用程序开发实战(二),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!
后端服务
后端用python实现,采用flask web框架。
可从github上获取flasky源码,在此基础上进行业务逻辑的实现。
程序结构如下:
├── app # 业务逻辑实现代码
│ ├── common # 公共函数实现,这里主要是数据库相关的增删改查接口实现,以及算法模型的推断功能实现
│ ├── init.py
│ ├── main # 视图函数实现,即供前端调用的API实现
│ └── pycache
├── config.py # 工程配置文件
├── log.txt # 日志文件
├── manage.py # 工程启动入口文件
└── start.sh # 启动脚本
启动服务
Gunicorn是一个unix上被广泛使用的高性能的Python WSGI UNIX HTTP Server,这里通过gunicorn部署我们的后端服务。
启动脚本start.sh如下:
gunicorn -w 4 -t 200 -b 0.0.0.0:8900 manage:app
执行脚本即可。
docker容器封装服务
该项目后端业务功能执行涉及算法模型的推断,算法模型依赖环境较复杂,为了后续方便部署,将服务封装成一个docker镜像,启动docker容器即可启动服务。
1.构建镜像
通过Dockerfile构建镜像。
# Dockerfile FROM {dockerhub仓库名}/caffe_python2.7and3.5_flask:v1.0 WORKDIR /vblt_server ENV PYTHONPATH=/workspace/caffe/python CMD ["nohup", "./start.sh"]
docker build -t vblt_server:v1.0 .
2.创建容器并启动服务
docker run --net=host --restart=always --privileged -v /root/vblt_server:/vblt_server --name=vblt_server2 vblt_server:v1.0
mysql服务
同样可以采用docker方式部署mysql服务。
该项目涉及两个服务,后台业务及mysql,为了简化部署并便于维护的,可以通过docker-compose进行docker容器的部署和管理。在此不展开,后续有时间再写。
这篇关于C/S架构的应用程序开发实战(二)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!
- 2024-09-28pyqt 怎么打包整个项目-icode9专业技术文章分享
- 2024-09-28laravel Commands 创建带有参数的 Artisan 命令的步骤和示例-icode9专业技术文章分享
- 2024-09-28antd怎么实现渲染tiff图片-icode9专业技术文章分享
- 2024-09-28英文半角中划线和中文全角的中划线有什么区别-icode9专业技术文章分享
- 2024-09-28nvm npm 和node 他们之间有什么关系-icode9专业技术文章分享
- 2024-09-28Node Version Manager (nvm)使用教程-icode9专业技术文章分享
- 2024-09-28nvm命令太慢,是什么原因-icode9专业技术文章分享
- 2024-09-28Kotlin 如何增加、删除和修改 MutableStateFlow 中的值。-icode9专业技术文章分享
- 2024-09-28Kotlin的stateFlow.update 写法介绍-icode9专业技术文章分享
- 2024-09-28kotlin 怎么获取当前时间格式-icode9专业技术文章分享