uWSGI优化选项

时间:2013-03-05 15:20:36

标签: python optimization assert uwsgi

我正在考虑在我的代码中添加一些assert语句,并希望能够将参数传递给uwsgi,以便能够关闭在生产中评估这些语句。我似乎无法弄清楚optimize option in uwsgi如何映射到-O command line value for python。 uWSGI的选项采用整数但没有描述它如何解释或使用该整数,而不是说“设置python优化级别”。但是,python文档从不提及整数,除了与环境变量的关系,只有整数相当于多个-O参数(我无法看到任何描述,但我怀疑它可能做类似-OO

的事情

那么,如果我还想删除文档字符串,我应该将optimize值设置为简单地关闭断言语句以及应该设置什么?并将其设置为0(零)默认值?

1 个答案:

答案 0 :(得分:3)

我通过将其设置为零来测试它,并且调试仍处于打开状态,但将其设置为大于零的任何数字都会关闭调试。

我的代码看起来像这样

def application(env, start_response):
    start_response('200 OK', [('Content-Type','text/html')])
    assert(not __debug__)
    return "Hello World"

我的电话看起来像这样

uwsgi --http 0.0.0.0:8000 --wsgi-file app.py -O 1

EDIT 我还在函数中添加了一个doc字符串,并将其添加到app.py文件的末尾

print "DOC STRING: %s" % application.__doc__

在-O设置为1和2的情况下进行测试,使用1,我得到了一个doc字符串,任何值都大于1我得到了无。