项目三大架构
- 逻辑架构(业务架构)–》思维导图(整理用户故事)
- 技术架构(前端 后端 数据库 缓存 消息队列 搜索引擎…)
开发语言:python
框架:Django、 - 物理架构(如何部署项目–》有没有云服务器?多少台?)
Nginx/Apache/Tengine –>静态资源服务器
Gunicorn/uWSGI运行python程序的服务器(提供动态内容)
Django3支持异步编程 –》DAphne/
本地运行
from flask import Flask, jsonify
app = Flask(__name__)
@app.route('/')
def index():
return jsonify(name='张三', age=18, sex='男')
if __name__ == '__main__':
app.run(debug=True, port=8000)
代码如上,可点击右键直接运行(测试环境)。
使用三方工具运行
pip install gunicorn
gunicorn -w 4 -b 0.0.0.0:8000 flask1:app
参数 | 说明 |
---|---|
-w | worker 工作进程数 |
-b | 绑定IP与端口 |
flask1 | 模块名称 |
将代码部署到服务器远程调试
配置远端服务器
配置安全的远程连接
上传到云服务器
建服务器上的虚拟环境
服务器上已经可以看见刚刚上传的项目了
进入项目文件,建立虚拟环境
- 方式一:使用python3 自带的模块建立虚拟环境(不好用)
[root firstFlask]# python3 -m venv venv
说明
:前venv 是python3 的模块名,后venv是虚拟环境的名字
激活虚拟环境
[root firstFlask]# source venv/bin/active
- 方式二:使用三方工具来创建虚拟环境
- 安装三方工具
[root firstFlask]# pip3 install virtualenv
- 创建虚拟环境
(如果不知道python的安装路径,可以使用virtualenv --python3=$(which python3) venv
来自动找到python的安装路径)
[root firstFlask]# virtualenv --python=/usr/bin/python3 venv
- 激活虚拟环境
[root firstFlask]# source venv/bin/activate
解下来,安装依赖项
(venv) [root firstFlask]# pip install -r requirements.txt
用Gunicorn服务器运行项目
(venv) [root firstFlask]# gunicorn -w 2 -b 0.0.0.0:80 flask1:app
远程访问
http://59.110.240.83/api/flask1