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.17.0.tar.gz (71.2 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.17.0.tar.gz.

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.17.0.tar.gz
Algorithm Hash digest
SHA256 77103bb00cc80e9e75a29849719837793e245193e4d851668882beb2562c412c
MD5 eb15b2d1d8f4cdd980d50bf02bfdf5fd
BLAKE2b-256 f5322532c07c42bc91315ff8a0e1b463d3dc19ff154f0f1c7fa62257fb1db330

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 9933d4383707eea3e289ba1ca7eca9d2b7d25812c6c680c74dfefad79b1d42f8
MD5 432477af2ff1240163a4a68bd506d416
BLAKE2b-256 39ba22c7ed27a356bd119adf7e4a14b276bae6afc1ab7257f723bc400f08573c

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