cuando pienso en crear una aplicación web básica, pienso en escribir algunos servlets, compilar un archivo WAR e implementarlo en Tomcat u otro contenedor de servlets.
Eso es bueno, pero irrelevante. Eso es solo un Java-ismo, y no se aplica mucho fuera de Java.
En Python, supongamos que escribí algún código que fuera capaz de responder a solicitudes HTTP, ¿qué haría con él? ¿Cómo lo implementaría?
Eso depende.
¿Cuál es el contenedor más utilizado en Python?
No hay ninguna.
¿Y hay un equivalente de un archivo WAR, un paquete estándar de una aplicación web en un archivo que funciona en los distintos contenedores?
No hay ninguna.
HTTP es un protocolo para generar una respuesta a una solicitud. Eso es. Es realmente una cosa muy pequeña.
Tiene scripts CGI que pueden responder a una solicitud. La biblioteca Python cgi
puede hacer eso. http://docs.python.org/library/cgi.html.
Esto es relativamente ineficiente porque la simple regla CGI es "disparar un nuevo proceso para cada solicitud". También puede ser inseguro si la secuencia de comandos permite privilegios elevados o cargas mal planificadas.
Tiene el marco mod_wsgi
para conectar Apache a Python. Esto puede comportarse como CGI, o puede tener un "daemon" de Python dedicado ejecutándose al final de una tubería con nombre.
El estándar WSGI define un formato para el procesamiento de solicitudes y respuestas que es muy útil y muy extensible. La mayoría de los marcos, de una forma u otra, son compatibles con WSGI.
Por último, existen marcos más completos que incluyen las definiciones de clase de solicitudes y respuestas, análisis de la URL, autenticación, autorización, etc., etc.
He aquí una lista: http://wiki.python.org/moin/WebFrameworks
Hay muchos frameworks web para Python. Intente buscar "framework web Python" para obtener una lista de ellos. ¿Que más quieres saber? Solo la lista? –
No estoy buscando un marco, estoy tratando de entender cómo se haría una aplicación web de Python sin un marco. Estoy comparando con Servlets y Tomcat, no con Spring o Struts. –
@ FarmBoy: "Servlets y Tomcat" en realidad es parte de un marco web. Lo siento, pero ese sigue siendo el marco. Para alejarse de Framework, tendría que estar escribiendo sockets o scripts CGI. Todavía hay docenas de marcos de Python que son más o menos equivalentes a Tomcat. Por favor busca y lee los resultados. ¿Qué quieres saber ** específicamente **? –