title: Difference between WSGI utilities and Web Servers
body: <p>I am new to Python and i am not able to understand the server concepts in Python.</p>
  
  <p>First of all what is <strong>WSGI</strong> and what are <strong>Wsgiref</strong> and <strong>Werkzeug</strong> and how are they different from CherryPy WSGI Server, Gunicorn, Tornado (HTTP Server via wsgi.WSGIContainer), Twisted Web, uWSGI, Waitress WSGI Server.</p>
  
  <p>If i need to develop a web application from scratch, i mean starting from the beginning, where should i start, my company needs a custom framework and the application is based on critical performance overheads.</p>
  
  <p>Please help and explain how they are different.</p>
  
  <p>P.S I am not a beginner to programming.</p>