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.19.1.tar.gz (75.8 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.19.1.tar.gz.

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.19.1.tar.gz
Algorithm Hash digest
SHA256 5b48a19e3c387b5a1a9fef9d109a73b7816fbea14e659b226b7c5199fc303c5f
MD5 999b0c097ec3b7d6b92a8d8d1b1ef35b
BLAKE2b-256 6cc7c45b0414aa4b6304a01e74fc1235147570eab24b9006dd26e4778c64d43b

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.19.1-py3-none-any.whl
Algorithm Hash digest
SHA256 5ac7600b9696f4fb2dbaf4015ba404c9fcff13d32287b1359c660e5f7b9846eb
MD5 762dabad0c2545d25a3c6840e5969f0c
BLAKE2b-256 54dc4750bc4846e208bd6c4ac2ca00d0b8e41f1e451f9f71f32c61a602db4f8a

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