Nice, I see you added the clock support stuff - many thanks - keep up the
good work!!

Cal

On Sat, Sep 1, 2012 at 11:25 AM, Roberto De Ioris <[email protected]> wrote:

>
> Hi everyone, the second release candidate of uWSGI 1.3 is available.
>
> This release contains a lot of optimizations and an infinite series of
> code refactoring (we had functions with more than 400 lines written 3
> years ago...).
>
> A couple of plugins and features have been added, see below.
>
> Changelog 1.3-rc2 (20120901)
>
> * the mongrel2 response generator now uses the new uwsgi_buffer structure
> for storing headers. This will generate a single zeromq message for all of
> the headers.
>
> * uwsgi.cache_get on remote server for non-existent keys no more spit out
> useless errors
>
> * NEW PLUGIN: router_http (compiled-in by default)
>
> works in the same way of the uwsgi one but forward requests to an http
> server. The uwsgi original request is translated to an http proxy request
> (adding specific headers like X-Forwarded-For)
>
> * NEW OPTIONS for config logic : --if-opt --if-not-opt
>
> works like --if-env but check for a previously defined uWSGI option
>
> * NEW FEATURE: --if-env (and --if-opt) can compare values:
>
> Example:
>
> if-env = USER=root
>     http-socket = :80
> endif =
>
> * NEW OPTION/FEATURE: --spooler-external <path>
>
> You can map spooler tasks to the directory managed by an external spooler.
>
> You could abuse that feature for building a centralized (per-server)
> spooler
> where multiple apps can write.
>
> As the --spooler option, you can have all of the --spooler-external
> options, and you can mix them with --spooler one.
>
> An example of mixing them would be having a 'local spooler' for
> app-specific tasks and a series of 'external spoolers' for services
> supplied by your ISP (A company may want to serve predefined spoolers for
> things like image processing or video encoding)
>
> * removed (broken) option --regexp-mount. If you want to map specific
> request to specific apps, use the internal routing subsystem.
>
> * NEW FEATURE: added cpu affinity to FreeBSD systems
>
> works like the Linux one, if you have 4 processors and want to map each of
> them to one of your 4 workers, use --cpu-affinity 1, while if you want to
> map 2 core for 2 processes use --cpu-affinity 2
>
> * various solaris/illumos/openindiana fixes
>
> * INTERNAL CHANGE: fully-shared requests structures
>
> From now on, the master has access to the whole memory used for storing
> requests in each worker. That means (in the future) a whole new series of
> real-time statistics (no work has been done in that area as it requires
> dealing with tons of race conditions, and currently i have no idea on how
> to manage them)
>
> * NEW INFRASTRUCTURE: modular clocks
>
> uWSGI 1.3 can now use multiple clock sources (you can create new clock
> sources using plugins).
>
> Currently there are 3 plugins available:
>
> unix (uses time() and gettimeofday())
> realtime (uses clock_gettime with CLOCK_REALTIME)
> monotonic (uses clock_gettime with CLOCK_MONOTONIC)
>
> the 'unix' one is the default.
>
> Embedded-system developers can easily create new clocks optimized for
> their platforms. Check the simplicity of the monotonic plugin:
>
>
> http://projects.unbit.it/uwsgi/browser/plugins/clock_monotonic/clock_monotonic.c
>
> * added support for Lua tables in the lua plugin (by Aaron B.)
>
> * fixed fastcgi support for chunks bigger than 64k
>
> * improvements in the gevent graceful reload subsystem
>
> * NEW PLUGIN: router_rewrite
>
> A stripped-down version of Apache mod_rewrite, its main purpose is dealing
> with php apps requiring rewrite rules (commonly placed in .htaccess files)
>
> * NEW PLUGIN: cheaper_busyness (by Łukasz Mierzwa)
>
> This is an extremely advanced cheaper algorithm (cheaper algorithms are
> used for adaptive process spawning) targeted at big deployments where you
> want always the maximum possibile performances while having the minimum
> amount of required workers.
>
> We are lucky, as Łukasz wrote documentation for it:
>
> http://projects.unbit.it/uwsgi/wiki/CheaperBusyness
>
> * NEW OPTIONS: --list-*
>
> You can list features loaded in your instance using --list-XXX options,
> use --help to get the full list of them.
>
> For example --list-plugins will print al of the available/loaded plugins
> as well --list-routers will print all of the available routers.
>
> * json output in stats is now human readable
>
> * improved weighted round robin in fastrouter
>
> * errors on request body (like the client not seding the whole body) now
> reports the amount of datas received and the amount of expected datas.
>
> * fixed linux sendfile() for files bigger than 2GB
>
>
> You can download it from:
>
> http://projects.unbit.it/downloads/uwsgi-1.3-rc2.tar.gz
>
> Thanks for testing it
>
> --
> Roberto De Ioris
> http://unbit.it
> _______________________________________________
> uWSGI mailing list
> [email protected]
> http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi
>
_______________________________________________
uWSGI mailing list
[email protected]
http://lists.unbit.it/cgi-bin/mailman/listinfo/uwsgi

Reply via email to