WSGI
The synchronous Web Server Gateway Interface specification, which defines a standard for synchronous communication between web servers and applications. It is the foundational protocol for traditional Python web frameworks such as Flask and supports synchronous processing only.
Core Facts
Timeline (last 90 days)
Checking only for Brotli calls in business code is insufficient; it is also necessary to confirm whether framework versions, reverse proxies (such as Nginx and Envoy) and WSGI/ASGI servers are affected, and to evaluate mitigation measures such as disabling unnecessary compression encodings or limiting request body size.
Vercel routing middleware can run as a standalone ASGI or WSGI application, executing before requests enter the main application.
WSGI (Web Server Gateway Interface, PEP 3333) is a synchronous standard, on which Django and Flask are built by default; ASGI is the asynchronous evolution, supporting async/await, WebSocket, and long-lived connections, and is used by FastAPI and Starlette.
A WSGI application is a callable object app(environ, start_response), while an ASGI application is async def app(scope, receive, send).
CGI is the earliest general interface specification but has been basically phased out due to poor performance; WSGI is an optimized version built on it but only supports synchronous operation, while ASGI goes a step further by supporting asynchronous development.
Flask is a lightweight Python web framework based on Werkzeug and Jinja2 that follows the WSGI specification.
WSGI is based on a synchronous model where each request occupies a thread or process, making it difficult to handle large numbers of long connections or streaming transmission scenarios.
All Facts (10)
ASGI is the asynchronous successor to WSGI; based on Python's async/await syntax, it allows a single process to concurrently handle thousands of connections.
65%UnverifiedFastAPI使用ASGI协议的服务器Uvicorn,而Flask和Django使用WSGI(同步)服务器
85%UnverifiedTraditional WSGI frameworks (such as Django and Flask) adopt a synchronous blocking model.
60%UnverifiedChecking only for Brotli calls in business code is insufficient; it is also necessary to confirm whether framework versions, reverse proxies (such as Nginx and Envoy) and WSGI/ASGI servers are affected, and to evaluate mitigation measures such as disabling unnecessary compression encodings or limiting request body size.
50%UnverifiedVercel routing middleware can run as a standalone ASGI or WSGI application, executing before requests enter the main application.
50%UnverifiedWSGI (Web Server Gateway Interface, PEP 3333) is a synchronous standard, on which Django and Flask are built by default; ASGI is the asynchronous evolution, supporting async/await, WebSocket, and long-lived connections, and is used by FastAPI and Starlette.
50%UnverifiedA WSGI application is a callable object app(environ, start_response), while an ASGI application is async def app(scope, receive, send).
50%UnverifiedCGI is the earliest general interface specification but has been basically phased out due to poor performance; WSGI is an optimized version built on it but only supports synchronous operation, while ASGI goes a step further by supporting asynchronous development.
50%UnverifiedFlask is a lightweight Python web framework based on Werkzeug and Jinja2 that follows the WSGI specification.
50%UnverifiedWSGI is based on a synchronous model where each request occupies a thread or process, making it difficult to handle large numbers of long connections or streaming transmission scenarios.
50%