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.4.tar.gz (5.7 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.4-py3-none-any.whl (5.9 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: lib_gateway_port-1.2.4.tar.gz
  • Upload date:
  • Size: 5.7 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.4.tar.gz
Algorithm Hash digest
SHA256 fa2664b144643c9069fa642aa790b562abeca333e8897b0751f83e9523b7af8f
MD5 3d896f3a5fd4808067920a1f8f44f144
BLAKE2b-256 83f91556f0d3cf136ed9a2f335866faad22f12b97c91c78bf803c5ca11b25114

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for lib_gateway_port-1.2.4-py3-none-any.whl
Algorithm Hash digest
SHA256 984fe3676d20005ba6522fd8ef9f9b117ca2b26fe8264673b9f9080918852678
MD5 3f11810310e2a8b61a1035bbffee6def
BLAKE2b-256 e7b47fd85266ce66ebcb1cf813790f0de798ad1436870f55f39d9bb89555a2c4

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