Goals
* Ideally we want minimal dependencies and zero configuration for ease of maintenance.
* Something that's integrated into python would be good but a standalone binary would also work.
* Lightweight is desirable, however, performance should not be a major issue with only ~40 simultaneous connections.
Our options thus far:
|Name + Link|Language|Dependencies|Comments|
|[[ http://aiohttp.readthedocs.org/en/stable/ | aiohttp ]]|Python3|Python >= 3.4.1, [[ https://pypi.python.org/pypi/chardet | chardet ]] or [[ https://pypi.python.org/pypi/cchardet/ | cchardet ]]|Simple asyncio http implementation. Requires just a bit of boilerplate python code to manage the server.|
|[[ https://twistedmatrix.com/documents/current/core/howto/basics.html | twistd ]]|Python|A bunch of them|twisted does include a standalone web server as an example, and packages are in debian/ubuntu. It fails the 'lightweight' and 'simple' goals though.|
|[[ https://docs.python.org/2/library/simplehttpserver.html | SimpleHTTPServer ]]|Python|Python|No extra dependencies and no configuration required. Questionable performance and scalability|
|[[ http://docs.gunicorn.org/en/latest/index.html | Gunicorn ]]|Python/WSGI|Ubuntu >= 12.04 or Debian Jessie|
|[[ https://uwsgi-docs.readthedocs.org/en/latest/ | uWSGI ]]|Python/WSGI|?|
Performance/dependency testing/benchmark things
** https://github.com/wg/wrk