[ANNOUNCE] uWSGI 1.0

After 2 years of development, the uWSGI project is at 1.0

This major release focuses on adaptive process spawning (–cheaper
mode),
the new stats framework, Mules and an incredible amount of bug fixes and
code refactoring.

Changelog:

  • adaptive process spawning (–cheaper option)

  • new control options --stop, --reload, --suspend, --resume, --pause

  • stats framework

http://projects.unbit.it/uwsgi/wiki/StatsServer

  • new subscription system

  • support for mime types in static file serving

  • posix capablities support

http://projects.unbit.it/uwsgi/wiki/Capabilities

  • uWSGI mules and farms

http://projects.unbit.it/uwsgi/wiki/Mules

  • support for multiple --touch-reload options

  • new logging subsystem

  • new custom locking subsystem

http://projects.unbit.it/uwsgi/wiki/Locks

  • process name handling

  • better (and faster) HTTP parser

  • perl and python threading improvements

  • new plugins: rrdtool, carbon, cgi, php

http://projects.unbit.it/uwsgi/wiki/Carbon
http://projects.unbit.it/uwsgi/wiki/CGI
http://projects.unbit.it/uwsgi/wiki/PHP

  • various improvements in the Rack/ruby plugin

http://projects.unbit.it/uwsgi/wiki/rubyDSL

  • Linux KSM support

http://projects.unbit.it/uwsgi/wiki/KSM

  • refactored ping and nagios plugins

  • support for signals in lazy mode

  • optimized static-file serving

  • support for linux unshare()

You can download the tarball from

http://projects.unbit.it/downloads/uwsgi-1.0.tar.gz

  • Special Thanks *

Lukasz Mierzwa for its incredible amount of test reports with complex
configurations

Giacomo Bagnoli for the KSM idea

Graham Dumpleton (mod_wsgi/newrelic) for help in addressing various
threading issues in the python plugin

  • Issues *

A bunch of patches are left out from 1.0, they will be committed in the
future

  • you cannot compile the rack plugin with the spooler disabled

  • the httprouter subscription system is not solid as the fastrouter one

support for multiple perl interpreters is post-poned to 1.1

  • the graphite/carbon plugin should export more metrics
  • Notes *

uWSGI 1.0 is the new LTS release

KSM does not grant you memory gain, it is completely app-dependent

The ruby/rack plugin has an extremely aggressive GC policy, do not
expect
extreme performance without tuning it

If you run uWSGI on some hosting provider/PaaS supporting only HTTP, be
sure to use --http-socket instead of --http (extreme performance gain)

Bye