dlphysical-layer.mdThe uWSGI

uWSGI is a fast, self-healing and developer/sysadmin-friendly application container server coded in pure C.

uWSGI operates on a client-server model. Your Web Server (e.g., nginx, Apache) communicates with a django-uwsgi "worker" process to serve dynamic content.

uWSGI wants to be a complete web application deployment solution with batteries included:

ProcessManagement, Management of long-running tasks, uWSGI RPC stack, Clustering, LoadBalancing, Monitoring, ResourceLimiting.

and many other annoying everyday tasks that you would have to delegate to external scripts and manual sysadmin tasks.

If your are searching for a simple server for your WSGI, PSGI or Rack app, uWSGI may not be for you.

Though, if you are building an app which needs to be rock solid, fast, and easy to distribute and optimize for various loads, you will most likely find yourself needing uWSGI.

The best definition for uWSGI is "Swiss Army Knife for your network applications."

The uWSGI project

The uWSGI project aims at developing a full stack for building hosting services.

Application servers (for various programming languages and prototocls), proxies, process managers and monitors are all implemented using a common api and a common configuration style.

Thanks to its pluggable architecture it can be extended to support more platforms and languages.

Currently, you can write plugins in C, C++ and objective-C.

The WSGI part in the name is a tribute to the namesake Python standard, as it has been the first developed plugin for the project.

Versatility, performance, low-resource usage and reliability are the strengths of the project (and the only rules followed).

The uwsgi protocal

The uwsgi (all lowercase) protocol is derived from SCGI but with binary string length representations and a 4-byte header that includes the size of the var block (16 bit length) and a couple of general-purpose bytes. We are not reinventing the wheel. Binary management is much easier and cheaper than string parsing, and every single bit of power is required for our projects. If you need proof, look at the

official protocol documentation https://uwsgi-docs.readthedocs.io/en/latest/Protocol.html

and you will understand why a new protocol was needed. Obviously, you are free to use the other supported protocols. Remember, if you cannot use uWSGI in some scenario, it is a uWSGI bug.

results matching ""

    No results matching ""