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

Uploaded Python 3

File details

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

File metadata

  • Download URL: lib_gateway_port-1.2.8.tar.gz
  • Upload date:
  • Size: 5.9 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.8.tar.gz
Algorithm Hash digest
SHA256 213a8f631a2b311256abcdd70dbc551c2187b479b22a1daedbe9d1fb509d3174
MD5 de412cbd5fd91393791c785e6778e941
BLAKE2b-256 94184f3df179a9aaf9a2d78f0195ac76df214d17f2a4234e8358a46dda69f087

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for lib_gateway_port-1.2.8-py3-none-any.whl
Algorithm Hash digest
SHA256 7e8ed6418205fe5b930ebb410c8a9b11baa9b3d326fdce2f03dad6e42bf79ad5
MD5 d8787145d3c4e3f13f81ca1777c2ee1d
BLAKE2b-256 9f8c12ee6908d7a271e30c633c22a63f34a5a207c04d9bf42ea022bc8effecdd

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