Cal,

Thanks for promotion, but I think you could read the subject first.

Anthony

On Dec 2, 8:02 am, "Cal Leeming [Simplicity Media Ltd]"
<cal.leem...@simplicitymedialtd.co.uk> wrote:
> It's a shame you are not using a *nix os, because you could have then
> used uWSGI (http://projects.unbit.it/uwsgi/).
>
> Feature list:
>
>     Current core features are
>
>     * written totally in C
>     * very fast (and simple) communication protocol for webservers
>       integration (apache2
>       <http://projects.unbit.it/uwsgi/wiki/RunOnApache2>,nginx
>       <http://projects.unbit.it/uwsgi/wiki/RunOnNginx>,cherokee
>       <http://projects.unbit.it/uwsgi/wiki/RunOnCherokee>andlighttpd
>       <http://projects.unbit.it/uwsgi/wiki/RunOnLighttpd>modules available)
>     * low memory footprint (thanks to the evil premature optimizations)
>     * support for multiple application in the same process/domain
>     * a master process manager that will allows you to automatically
>       respawn processes and monitor the stack status
>     * preforking mode to improve concurrency
>     * address space and rss usage reports
>     * advanced logging (even networked, seeUdpLogging
>       <http://projects.unbit.it/uwsgi/wiki/UdpLogging>)
>     * static file serving via sendfile() (where available)
>     * portability (tested on Linux 2.6, Solaris/OpenSolaris, OpenBSD,
>       NetBSD, DragonflyBSD, FreeBSD, MacOSX and Haiku)
>     * support for funny architectures like SPARC64 or ARM
>     * support for threads (configurable, available from 0.9.7-dev)
>     * cgi mode for lazy users or ugly webservers (example cgi
>       includedhere
>       <http://projects.unbit.it/uwsgi/browser/contrib/uwsgi_client.c>andhere
>       <http://projects.unbit.it/uwsgi/browser/contrib/uwsgi_dynamic_client.c>)
>     * harakiri mode for self-healing
>     * vector based I/O to minimize syscall usage
>     * hot-add of applications. SeeDynamicApps
>       <http://projects.unbit.it/uwsgi/wiki/DynamicApps>
>     * on the-fly configuration parameters. SeeManagementFlag
>       <http://projects.unbit.it/uwsgi/wiki/ManagementFlag>
>     * big (professional) user-base (hundreds of production ready wsgi
>       apps) thanks to its main development managed by the Italian ISP Unbit
>     * commercial support available (contact Unbit for informations)
>     * all code is under GPL2 (but you can buy a commercial license if
>       you want to modify it without releasing source code)
>     * configurable buffer size for low-memory system or to manage big
>       requests
>     * customizable builds (you can remove unneeded functionality)
>     * intelligent worker respawner wih no-fork-bombing policy
>     * limit requests per worker
>     * process reaper for external process managers (as daemontools).
>       Avoids zombie workers.
>     * Per-request modifier for advanced users (SeeRunOnNginx
>       <http://projects.unbit.it/uwsgi/wiki/RunOnNginx>for an example
>       usage, anduwsgiProtocol
>       <http://projects.unbit.it/uwsgi/wiki/uwsgiProtocol>for the
>       modifiers list)
>     * UNIX and TCP socket support
>     * Graceful restart of worker processes and hot-plug
>       substitution/upgrade of theuWSGIserver usingSignals
>       <http://projects.unbit.it/uwsgi/wiki/uWSGISignals>. SeeuWSGIReload
>       <http://projects.unbit.it/uwsgi/wiki/uWSGIReload>
>     * A shared memory area to share data between workers/processes.
>       SeeSharedArea <http://projects.unbit.it/uwsgi/wiki/SharedArea>
>     * An integratedSpooler
>       <http://projects.unbit.it/uwsgi/wiki/Spooler>for managing long
>       running task.
>     * Message exchanging (viauwsgiprotocol) for easy-implementation of
>       distributed applications (look atClusteredExamples
>       <http://projects.unbit.it/uwsgi/wiki/ClusteredExamples>)
>     * Get statistics of all the workers using theEmbeddedModule
>       <http://projects.unbit.it/uwsgi/wiki/EmbeddedModule>
>     * Integrated Async/EventedProxy
>       <http://projects.unbit.it/uwsgi/wiki/Proxy>for load-balancing and
>       healtchecking of big clusters (from version 0.9.5)
>     * Address space usage limiting (from version 0.9.5)
>     * integrated SNMP agent and nagios-friendly output (from version
>       0.9.5) SeeUseSnmp <http://projects.unbit.it/uwsgi/wiki/UseSnmp>
>     * VirtualHosting
>       <http://projects.unbit.it/uwsgi/wiki/VirtualHosting>mode (from
>       version 0.9.6)
>     * Embedded threadedHTTP server
>       <http://projects.unbit.it/uwsgi/wiki/HTTPserver>for easy
>       development and testing (from version 0.9.6)
>
>     TODO/Working on
>
>     * integrated support for wsgi middleware (is it really useful ?)
>     * put some more code comments to gather external developers ;)
>     * better anti-fork bombing policy (lesser dumb)
>     * advanced conditional logging (already available in 0.9.6.5, more
>       to come in 0.9.7)
>     * Linux cgroups integration (work already started in 0.9.7-dev)
>       seeUseCgroups <http://projects.unbit.it/uwsgi/wiki/UseCgroups>
>     * SSL support (with certificate client authentication) to allow
>       remote management of theuWSGIstack
>     * support for multiple listening sockets (already available in
>       mercurial repository, simply add more --socket options)
>     * Web3 (PEP-444) (already available in mercurial repository)
>     * IPv6 support (targeted at 0.9.7 release)
>     * SCTP support (experimental support is in 0.9.5 trunk, but no
>       performance gain, still hard work needed)
>     * Event Dispatcher (execute callable on external events like file
>       changes, bonjour/avahi/dnssd message, timers...) (work started in
>       0.9.6-dev, targeted at 0.9.7)
>     * hash table overSharedArea
>       <http://projects.unbit.it/uwsgi/wiki/SharedArea>(for ultra-fast
>       integrated caching)
>     * AIX, Hurd, MorphOS support (targeted at 0.9.7)
>     * Better Rack/RubyOnRails plugin
>     * Async Mode optimizations (work already started in 0.9.7-dev)
>     * Threading mode support (already available in mercurial repository,
>       simply add --threads <N> to spawn N thread cores)
>     * fully pluginize python support to make a total language agnostic
>       server (main feature of 0.9.7 release)
>     * Move embedded http server from threads to evented
>     * Add Message Queuing system (with publish/subscribe) on top of
>       theSpooler <http://projects.unbit.it/uwsgi/wiki/Spooler>(and
>       export it via STOMP protocol to third party software)
>
> On 01/12/2010 15:26, Javier Guerra Giraldez wrote:
>
> > On Wed, Dec 1, 2010 at 6:43 AM, ashdesigner<antony.shash...@gmail.com>  
> > wrote:
> >> The only undiscovered issue to us is whether we can launch a heavy
> >> loaded website in Django under Windows (IIS) + MSSQL. Would appreciate
> >> any comment please.
> > a WSGI plugin for IIS would be the best answer; but there's nothing
> > wrong with FastCGI.  properly managed can sustain as high load as
> > anybody else.
>
> > unfortunately, the most common FastCGI->WSGI adapter (flup) is quite
> > good and performant; but limited in terms of dynamic process/thread
> > lifetime managing.  a more 'modern' approach could be gunicorn or
> > Tornado.  since both of them handle HTTP->WSGI, your IIS frontend
> > would have to proxy those requests, but i guess that's a standard
> > feature of any webserver

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To post to this group, send email to django-us...@googlegroups.com.
To unsubscribe from this group, send email to 
django-users+unsubscr...@googlegroups.com.
For more options, visit this group at 
http://groups.google.com/group/django-users?hl=en.

Reply via email to