Wsgiserver: 0.2

EXPOSE 8000

server.shutdown() # Run all tests pytest With coverage pytest --cov=wsgiserver --cov-report=html Run specific test pytest tests/test_server.py::test_basic_request -v 5. Performance Optimization 5.1 Connection Pooling class ConnectionPool: """Manage persistent connections""" def __init__(self, max_connections=100): self.pool = [] self.max_connections = max_connections def acquire(self): if self.pool: return self.pool.pop() return None def release(self, connection): if len(self.pool) < self.max_connections: self.pool.append(connection) 5.2 Asynchronous Support import asyncio class AsyncWSGIServer: """Asynchronous version using asyncio""" wsgiserver 0.2

CMD ["python", "-m", "wsgiserver.server", "--host", "0.0.0.0", "--port", "8000"] EXPOSE 8000 server

def __init__(self, app): self.app = app def __call__(self, environ, start_response): import time start = time.time() response = self.app(environ, start_response) duration = time.time() - start print(f"Request took: duration:.4fs") return response app = hello_world_app app = LoggingMiddleware(app) app = TimingMiddleware(app) connection): if len(self.pool) &lt

server.shutdown() def test_post_request(): """Test POST request handling""" def app(environ, start_response): content_length = int(environ.get('CONTENT_LENGTH', 0)) body = environ['wsgi.input'].read(content_length) start_response('200 OK', [('Content-Type', 'text/plain')]) return [body]