安装¶
PyPy¶
PyPy 是运行您的Falcon应用程序的最快方式。从PyPy v7.3.4开始支持Py3.7+。
$ pip install falcon
或者,要安装最新的测试版或发布候选版(如果有):
$ pip install --pre falcon
CPython¶
Falcon全力支持 CPython 3.7+。
可以直接从PyPI安装最新稳定版本的Falcon:
$ pip install falcon
或者,要安装最新的测试版或发布候选版(如果有):
$ pip install --pre falcon
为了提供额外的速度提升,Falcon可以用Cython自行编译。包含预编译二进制文件的轮子可从PyPI获得,用于几个常见平台。但是,如果没有适用于您选择的平台的轮子,您可以选择坚持使用源代码发行版,或者使用下面的说明针对您的环境对Falcon进行Cython化。
以下命令告诉pip安装cython,然后调用falcon的 setup.py
它将依次检测Cython的存在,然后使用系统的默认C编译器编译(也称为Cythonize)Falcon框架。
$ pip install cython
$ pip install --no-build-isolation --no-binary :all: falcon
请注意, --no-build-isolation
是覆盖pip的默认PEP517行为所必需的,该行为可能导致在构建环境中找不到Cython。
如果要验证是否正在调用Cython,只需通过 -v 要通过pip来回送编译命令,请执行以下操作:
$ pip install -v --no-build-isolation --no-binary :all: falcon
在OS X上安装
编译cython需要xcode命令行工具。使用以下命令安装它们:
$ xcode-select --install
clang编译器将无法识别的命令行选项视为错误,例如:
clang: error: unknown argument: '-mno-fused-madd' [-Wunused-command-line-argument-hard-error-in-future]
您还可能看到有关未使用函数的警告。您可以通过如下设置其他clang c编译器标志来解决这些问题:
$ export CFLAGS="-Qunused-arguments -Wno-unused-function"
依赖关系¶
Falcon不需要安装任何其他软件包,但如果Cython已经安装到环境中,它将用于优化上述框架。
WSGi服务器¶
Falcon会说wsgi,所以为了服务Falcon应用程序,您需要一个wsgi服务器。Gunicorn和Uwsgi是最受欢迎的,但是任何可以加载wsgi应用程序的东西都可以。
Windows用户可以尝试WAITRESS,这是一款产品级质量的纯Python WSGI服务器。Windows上的其他选择包括通过WSL运行Gunicorn和uWSGI,以及在Linux Docker容器内运行。
$ pip install [gunicorn|uwsgi|waitress]
ASGI服务器¶
相反,为了运行 async
Falcon ASGI app
,您将需要一个 ASGI 应用服务器(Falcon仅支持ASGI 3.0+,也称为单调用应用程序风格)。
Uvicorn是一种流行的选择,因为它的实施速度快,运行稳定。更重要的是,Windows和PyPy都支持Uvicorn(然而,与Unix类系统上的CPython相比,两者都有性能损失)。
Falcon还定期针对当前的ASGI参考服务器Daphne进行测试。
有关可用服务器的更深入概述,另请参阅: ASGI Implementations 。
$ pip install [uvicorn|daphne|hypercorn]
备注
默认情况下, uvicorn
包只附带最小的纯Python依赖项集。对于基于CPython的生产部署,您可以安装Uvicorn以及更优化的替代方案,例如 uvloop
(更快的事件循环), httptools
(更快的HTTP协议实现)等:
$ pip install uvicorn[standard]
另请参阅Uvicorn网站上的更长说明: Quickstart 。
源代码¶
Falcon lives on GitHub 使代码易于浏览、下载、分叉等。拉请求总是受欢迎的!另外,如果这个项目让你高兴的话,请记住在它上面加上星号。:)
一旦克隆了回购协议或从Github下载了tarball,就可以像这样安装falcon:
$ cd falcon
$ pip install .
或者,如果要编辑代码,请首先分叉主repo,将分叉克隆到桌面,然后运行以下命令,使用符号链接安装它,这样当您更改代码时,更改将自动对应用程序可用,而无需重新安装包:
$ cd falcon
$ pip install -e .
您可以通过切换到克隆的repo目录,然后运行pytest,手动测试对falcon框架的更改:
$ cd falcon
$ pip install -r requirements/tests
$ pytest tests
或者,要运行默认测试集:
$ pip install tox && tox
小技巧
也见 tox.ini 文件以获取可用环境的完整列表。
最后,要从源代码构建Falcon的文档,只需运行:
$ pip install tox && tox -e docs
创建文档后,您可以通过在浏览器中打开以下索引页来查看它们。在OS X上,简单的如下:
$ open docs/_build/html/index.html
或者在Linux上:
$ xdg-open docs/_build/html/index.html