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.0.tar.gz (75.4 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.0.tar.gz.

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.18.0.tar.gz
Algorithm Hash digest
SHA256 ec663d94c36db2c95aeb2de444cafc441d18062afcf965d4d6e14b61313d9a73
MD5 31e36f7ad2ade58d3fa2736aed194cc6
BLAKE2b-256 eae4c4bcbdb7b62d0fee5d3cf1a6d446f8b5a2c6e79c7426efe112aa80712711

See more details on using hashes here.

File details

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

File metadata

File hashes

Hashes for backend_ai_appproxy_coordinator-25.18.0-py3-none-any.whl
Algorithm Hash digest
SHA256 cc72d4bdba4d9873b2968db8cf2903edb41562e756fbd8eb3da3405cf972652b
MD5 58bbd6efecacfb2fe417fb73ae732047
BLAKE2b-256 a9d748baa054e0e4d6e1c6a4594422ffe6bf93d6f554dd4148132857eceb369f

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