# 前言
python falcon是一种更接近于python wsgi的框架,它拥有比falsk和Django更快的速度,更高的性能。但缺点就是没人用,没人用和没人用。官方文档缺少实例,社区经验相比于flask和Django简直可以用“稀少”来形容。
如果你想用它开发实际项目,我劝你可以考虑跑路了。
如果你想用它学习PythonWSGI和网络相关的知识,那可以一试。
Tag: <tag>Linux systemctl service python falcon gunicorn </tag># 安装及设置
要点:
1. 安装python3及pip
2. 安装虚拟环境
# cd到你的文件目录,以下为例子
cd /var/local/Falcon
# 安装virtualenv(venv创建程序)
pip3 install -i https://pypi.tuna.tsinghua.edu.cn/simple virtualenv
# 创建venv
virtualenv --python=python3 venv
# 启用venv
source ./venv/bin/activate
# 本项目不需要用到设置环境变量
# 安装falcon和gunicorn
pip3 install falcon gunicorn
# 编写python程序
在这里用Falcon官方文档的程序作为实例,实际上你在本地开发好后直接复制过来就行。
注意:这个python最好不要叫做falcon.py之类<em>与python类重名</em>
# /var/local/Falcon/FalconApp.py
from wsgiref.simple_server import make_server
import falcon
class ThingsResource:
def on_get(self, req, resp):
"""Handles GET requests"""
resp.status = falcon.HTTP_200
resp.content_type = falcon.MEDIA_TEXT
resp.text = ('\nTwo things awe me most, the starry sky '
'above me and the moral law within me.\n'
'\n'
' ~ Immanuel Kant\n\n')
app = falcon.App()
things = ThingsResource()
app.add_route('/things', things)
if __name__ == '__main__':
with make_server('', 8000, app) as httpd:
print('Serving on port 8000...')
httpd.serve_forever()