python - What is the difference between web server component and web server? - No framework -
now bear me please. i'll explain beginning briefly. 8 months ago, worked in web project python, used no framework (from scratch). limited myself implement views , templates, pass of months became curious made research.
now i'm checking wsgi , how make "do-it-yourself" frameworks. i'm bit curious things. when in project 8 months ago, used web server, remember in web there "web server" component too.
the component tornado web server, , other server nginx. now, what's difference between 1 , other server?
and if component (tornado or one) not thing need deployment, else need?
to clarify:
tornado python web framework , asynchronous networking library.
that's own definition, not mine. (https://pypi.python.org/pypi/tornado)
tornado can function web server well. python web development frameworks don't function web server - need bootstrapped onto library development work. others can function web server, don't recommend - designed write code, not build it.
if you're inclined so, can serve tornado directly. people - including tornado development team - have seen better performance putting tornado behind nginx , , using nginx load-balance , serve static content. http://www.tornadoweb.org/en/stable/overview.html?highlight=nginx
there many different ways deploy wsgi applications internet. of them include:
- directly deploy app on port80
- use nginx/apache public load-balancer:
- proxy connections app running on local port
- run app under uwsgi, configure public load-balancer proxy requests uwsgi
there other ways deploy wsgi apps using gunicorn, eventlet, twisted, , countless other networking or web serving libraries.
to answer question :
in project worked on, nginx functioned public facing web server. tornado (most likely) functioned both web framework , private web server.
Comments
Post a Comment