更新日志 [20131117]
- Go茶具现在被认为是“损坏的”,并且已移出
plugins目录。在uWSGI中运行Go应用的推荐方法是使用 :doc:`GCCGO` 插件。 - 已移出
--auto-snapshot选项,现在可以通过 :doc:`MasterFIFO` 来进行实例的高级管理。 - 已移除matheval支持,而推出了一个通用的"matheval"插件 (用于内部路由) (但默认不编译)。看看下面在配置文件中做“算术”的新方法。
- "erlang"和"pyerl"插件不能用了,并且已移出
plugins目录。将会在2.0发布之后完全重写Erlang支持。
ZeroMQ API (实际上是一个简单的函数) 将会被移除。每个使用ZeroMQ的插件江湖创建其自己的 zmq 上下文 (无需共享)。这意味着在uWSGI核心二进制文件中不再链接libzmq。
Mongrel2协议支持将会移到一个"mongrel2"插件上,而不是内嵌到核心中。
- 修复在lazy模式下进行优雅重载时的master中止。
- 修复
default_app使用。 - 另一轮coverity修复,由Riccardo Magliocchetti完成。
- 修复读取请求体时的
EAGAIN管理。
在此版本之前,每个RPC响应都被限制到64K大小 (16位)。
现在,RPC协议自动检测是否需要更多的空间,并且可以扩展到64位。
该方法的另一个优势在于,只会分配每个响应需要的内存大小,而不是每次盲目创建一个64k大小的块。
看看官方文档: :doc:`GCCGO`
这个插件处于开发的初期,但它已经非常稳定了。
如前所见,我们移除了matheval支持,取而代之的是一个简化的接口:
例如,现在,你可以自动设置线程数为:
[uwsgi]
; %k is a magic var translated to the number of cpu cores
threads = %(%k * 3)
...(%k * 3 是 number_of_cpu_cores * 3).
%t- Unix时间 (以秒为单位,实例启动时收集)。
%T- Unix时间 (以微秒为单位,实例启动时收集)。
%k- 检查CPU核数。
- :doc:`Chunked`.
psgix.io是一个映射到连接文件描述符的Socket::IO对象 (你需要用--psgi-enable-psgix-io来启用它)。- 来自API的
uwsgi::rpc和uwsgi::connection_fd。 --plshell江湖调用一个交互式shell (基于Devel::REPL)。
当带SSL支持构建时,uWSGI公开了两个原生socket协议:HTTPS和通过SSL的uwsgi。
这两个选项都以以下值为参数: <addr>,<cert>,<key>[,ciphers,ca]
[uwsgi]
https-socket = :8443,foobar.crt,foobar.key
...目前,没有主流的web服务器支持SSL上的uwsgi,在未来的几小时内,将会把一个nginx补丁送交审核。
最近,Amazon ELB增加了对HAProxy PROXY (version 1)协议的支持。这个简单的协议允许前端传递真正的客户端IP到后端。
增加 --enable-proxy-protocol 将会强制 --http-socket 检查用于设置 REMOTE_ADDR 和 REMOTE_PORT 字段的PROXY协议请求。
avg- 计算孩子的算术平均:
--metric name=foobar,collector=avg,children=metric1;metric2. accumulator- 总是添加指定孩子的值到最终值中。
multiplier- n用
arg1n中指定的值乘以指定孩子的总和。
看看 :doc:`Metrics`.
uWSGI 1.9.20于2013年11月17日发布
你可以从下面地址下载它: