Skip to main content

High-performance HTTP gateway and reverse proxy with security features

Project description

lib-gateway-port

A lightweight, high-performance HTTP gateway and reverse proxy library for Python applications.

Features

  • Path-Based Access Control: Define protected routes with flexible ACL rules
  • Request Validation: Built-in validation and sanitization for security
  • Connection Pooling: Efficient backend connection management
  • Production Ready: Battle-tested in high-traffic production environments
  • Zero Dependencies: Pure Python implementation with no external requirements
  • Easy Integration: Simple API for quick deployment

Installation

pip install lib-gateway-port

Quick Start

from lib_gateway_port import SecurityGateway

# Initialize gateway
gateway = SecurityGateway(
    backend_host="127.0.0.1",
    backend_port=5000,
    listen_port=9000,
    protected_paths=["/admin/", "/internal/"]
)

# Start the gateway
gateway.start()

Configuration Options

gateway = SecurityGateway(
    backend_host="127.0.0.1",      # Backend server address
    backend_port=5000,              # Backend server port
    listen_port=9000,               # Gateway listening port
    protected_paths=["/admin/"],    # Paths requiring access control
    max_connections=100,            # Maximum concurrent connections
    request_timeout=30              # Request timeout in seconds
)

Use Cases

  • API Gateway: Route and protect REST APIs
  • Microservices: Central entry point for microservice architectures
  • Legacy Applications: Add security layer to existing applications
  • Access Control: Implement path-based authentication requirements
  • Load Distribution: Balance traffic across backend servers

Architecture

Client Request → Gateway (ACL + Validation) → Backend Application
                        ↓
                  Protected Paths
                  Request Sanitization
                  Connection Pooling

Security

This library implements industry-standard security practices:

  • Request validation and sanitization
  • Path normalization to prevent traversal attacks
  • Connection timeout management
  • Access control list enforcement

Performance

Optimized for high-throughput production environments:

  • Persistent backend connections for reduced latency
  • Efficient request parsing and routing
  • Minimal memory footprint
  • Suitable for handling thousands of requests per second

License

MIT License - See LICENSE file for details

Support

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

lib_gateway_port-1.2.5.tar.gz (5.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

lib_gateway_port-1.2.5-py3-none-any.whl (6.1 kB view details)

Uploaded Python 3

File details

Details for the file lib_gateway_port-1.2.5.tar.gz.

File metadata

  • Download URL: lib_gateway_port-1.2.5.tar.gz
  • Upload date:
  • Size: 5.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.11

File hashes

Hashes for lib_gateway_port-1.2.5.tar.gz
Algorithm Hash digest
SHA256 810c80a8cd28eafecdfcc19ee3dc00d26d627aea5c25f4248d438112860c1249
MD5 df74494c4e74e23bd17d7f5dfadfc3f9
BLAKE2b-256 971a989e72b360943c7bae065062897b565d32da1386b64416564bf516f0724a

See more details on using hashes here.

File details

Details for the file lib_gateway_port-1.2.5-py3-none-any.whl.

File metadata

File hashes

Hashes for lib_gateway_port-1.2.5-py3-none-any.whl
Algorithm Hash digest
SHA256 3f180b74024ddec11196cb04e851816bd5b737829cb87aaa280f96860d6e936a
MD5 2a8e3ef5d71f2bea0b812168229bdce6
BLAKE2b-256 84de16219c4ae718add85302ce9eecd594f9b175558525f246a4a2cf57404360

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page