Skip to main content

Backend.AI AppProxy Coordinator

Project description

Backend.AI App Proxy Coordinator

Purpose

The App Proxy Coordinator manages routing information for App Proxy Workers, coordinates worker instances, and handles service port mappings for compute session services (Jupyter, SSH, TensorBoard, etc.).

Key Responsibilities

1. Worker Management

  • Register and track App Proxy Worker instances
  • Monitor worker health and availability
  • Distribute routing information to workers
  • Handle worker failover

2. Route Management

  • Manage service port mappings (session → service → port)
  • Update routing tables dynamically
  • Propagate route changes to workers
  • Handle route conflicts and resolution

3. Service Discovery

  • Maintain service registry
  • Provide route lookup for workers
  • Update routes when sessions change
  • Clean up routes for terminated sessions

Entry Points

App Proxy Coordinator has 1 entry point to receive and process requests.

1. REST API

Framework: aiohttp (async HTTP server)

Port: 6030 (default)

Primary Purpose:

  • Worker management (registration, monitoring)
  • Routing information management (session-to-service port mapping)

Key Features:

  • HTTP/HTTPS-based communication
  • Centralized service routing information management
  • Real-time route updates
  • Persistent routing information storage in PostgreSQL

Processing Flow:

Worker Registration Flow

Worker → POST /workers/register → Coordinator
                                      ↓
                                  Register worker in DB
                                      ↓
                                  Return worker ID and routes

Route Creation Flow

Manager → POST /routes → Coordinator
                             ↓
                         Store route in DB
                             ↓
                         Notify all workers
                             ↓
                         Workers update local routing table

Integrated Architecture:

┌──────────────┐
│   Manager    │
│              │
└──────┬───────┘
       │ Route Management (REST)
       ▼
┌─────────────────────────────────────┐
│  App Proxy Coordinator (Port 6030)  │
│  - Worker registration              │
│  - Route management                 │
│  - Service port mapping             │
│  - Route propagation                │
└─────────┬───────────────────────────┘
          │
          ▼ Worker Registration & Route Updates
    ┌─────┴─────┬─────────┬─────────┐
    ▼           ▼         ▼         ▼
┌────────┐ ┌────────┐ ┌────────┐ ┌────────┐
│Worker 1│ │Worker 2│ │Worker 3│ │Worker N│
└────────┘ └────────┘ └────────┘ └────────┘

Project details


Release history Release notifications | RSS feed

Download files

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

Source Distribution

backend_ai_appproxy_coordinator-25.18.1.tar.gz (75.3 kB view details)

Uploaded Source

Built Distribution

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

File details

Details for the file backend_ai_appproxy_coordinator-25.18.1.tar.gz.

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.18.1.tar.gz
Algorithm Hash digest
SHA256 18eff5907dccf5ae8ebaa8e7deb9a95755a755c6880f01602f0e233e42581fe2
MD5 d20ca6f2398055d370d472e11c95601d
BLAKE2b-256 8c3454c8022a9402197b3b129cbbd5e1bbef6686f2ea58842449baaf491aa3f3

See more details on using hashes here.

File details

Details for the file backend_ai_appproxy_coordinator-25.18.1-py3-none-any.whl.

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.18.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4f1594cff06b6bac5c338610490a0cda69c7fdd7b02069d43ad806f50d7ebc02
MD5 d6ba5d1ba6f8432b81f2cd0b72359957
BLAKE2b-256 c243f0f19c05cc92dae47b49851a8fb6ed037206519d3398bbda27cb596a0add

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