自以为是的uwsgi设置

mywsgi的Python项目详细描述


mywsgi

为新的python项目设置uWSGI很困难。uwsgi提供了一百万种配置选项 千方百计去做每件事。我已经把它简化为一组核心的基本选项。

这些选择都是非常固执己见的,我是如何成长为喜欢做的事情。

安装

pip install mywsgi

如何操作

使用mywsgi有两个api。一个python api和一个cli api。

cli

mywsgi附带了一个cli接口。这是最简单的方法。

$ mywsgi --help
usage: mywsgi [-h] module bind

positional arguments:
  module      python wsgi module
  bind        ip:port to bind to

optional arguments:
  -h, --help  show this help message and exit
mywsgi foo.wsgi:application 127.0.0.1:8000

如果要覆盖或更改任何uwsgi变量,唯一的方法是通过 uwsgi的本地环境变量。例如:

exportUWSGI_MAX_REQUESTS=1000exportUWSGI_HARAKIRI=30
mywsgi foo.wsgi:application 127.0.0.1:8000

python api

python api很简单,它公开了一个带有两个必需参数的函数。

importmywsgimywsgi.run("foo.wsgi:application","127.0.0.1:8000",)

运行这个最终exec并将所有控制权交给uWSGI。所以除了这个电话, 别的什么也跑不了。你的程序不见了。

您可以将额外的uwsgi参数作为额外的kwargs一起传递给它:

importmywsgimywsgi.run("foo.wsgi:application","127.0.0.1:8000"max_requests=10000,harakiri=30,)

任何作为kwargs传入的内容都将直接传递给uwsgi,并将覆盖我的默认值。

带上你自己的uwsgi

这个包不直接需要uwsgi,但是它支持使用uWSGI包和伟大的pyuwsgi包。

我强烈建议使用pyuwsgi,而不是直接使用uWSGIpyuwsgi只是uWSGI的编译二进制分布。

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
jframe为什么JAVA paint()方法不起作用?   java Guice:将ContainerRequestContext注入拦截器   java如何优雅地关闭Spring JMS MessageListenerAdapter   java如何在Spring中设置快照隔离级别   Java中的安卓平台独立信任存储路径   java无法在eclipse中运行hello world程序   java Sinch空指针问题   使用Java将JSON流式传输到BigQuery   java从“大数据”中选择什么Swing控件?   java通过对象字段过滤/排序集合?   java将数据从活动传递到另一个活动中的片段   java访问打包在jar文件中的文档   Java获取事件的大小。getDragboard()。getFiles()。流()。映射(文件::长度)。toString());   java Android libgdx:启动程序图标按下后,启动屏幕不会立即显示   java如何在Google App Engine灵活环境中配置oracle jdk   java有没有办法减少这些行?   Java:客户端socket不读取第二行,在终止符行之后保持打开状态   java以编程方式获取api 29上的所有APK文件   java ActionBar按钮不显示