Skip to main content

Atlas

Atlas is a reverse proxy based load balancing framework implemented in Python. It exposes various load balancing algorithms to distribute incoming requests across multiple origin servers. The load balancer state is maintained in-memory at the reverse proxy server, with no (or minimal) set up needed on the origin server.

Installation

Atlas can be installed from the Python Package Index using the following command:

pip install atlaslb

Usage

Supported Algorithms

  1. Random
  2. Round Robin
  3. Least Connection
  4. Least Latency

OriginServer

The OriginServer class represents an origin server with various attributes such as host, weight, CPU usage, local requests in flight (local_rif), and latency.

Methods

  • __init__(self, host, weight=1, cpu=0, local_rif=0, latency=0): Initializes the origin server with the given attributes.
  • __str__(self): Returns a string representation of the origin server.

BaseLoadBalancer

The BaseLoadBalancer class is the base class for all load balancers. It maintains a list of origin servers and a mapping of hostnames to server objects.

Methods

  • __init__(self, servers: dict[str, OriginServer] = None): Initializes the load balancer with the given servers.
  • add_server(self, server: OriginServer): Adds a server to the load balancer.
  • forward_request(self, request, path: str): Forwards the request to the appropriate origin server based on the load balancing algorithm.
  • __str__(self): Returns a string representation of the load balancer.

LoadBalancerFactory

The LoadBalancerFactory class is a factory class to create different types of load balancers based on the given configuration.

Methods

  • CreateLoadBalancer(self, configuration): Creates a load balancer based on the provided configuration.

Metadata

Release files for atlaslb 1.0.4

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for atlaslb 1.0.4
File Size Uploaded Provenance
atlaslb-1.0.4.tar.gz 7.7 kB Without provenance Details

Built distribution (wheel)

Table of built distributions (wheels) for atlaslb 1.0.4
File Interpreter ABI Platform
atlaslb-1.0.4-py3-none-any.whl Python 3 none any Details

Total release size: 19.1 kB

Release files / atlaslb-1.0.4.tar.gz

Download URL atlaslb-1.0.4.tar.gz
Size 7.7 kB
Tags Source
SHA-256 checksum
How to use checksums
0160b486590bccb8dd8164ddebfb410e79d541998b557bd7255383acdd665d33
BLAKE2b-256 checksum
How to use checksums
04c9f6648aea202642e785844dc3d112d3b471c57360f53e68f159eef6f904cf
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Release files / atlaslb-1.0.4-py3-none-any.whl

Download URL atlaslb-1.0.4-py3-none-any.whl
Size 11.4 kB
Tags Python 3
SHA-256 checksum
How to use checksums
172c9186514a6add0ed83b63afd241587c8443164eba6cfdd3941e493865923f
BLAKE2b-256 checksum
How to use checksums
bb48e4c1a30b37dff83d9dbf03e5784fbd49bfe94156ca92f839e9f10fdcf349
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.0.1 CPython/3.13.1

Security for atlaslb 1.0.4

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

Release history Release notifications | RSS feed

This release

1.0.4 This release

2 release files No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page