Skip to main content

Container image build repository for market data processing servers

Project description

License PyPI Downloads Build Status Publish to PyPI CodeQL Advanced GitHub issues GitHub pull requests

kuhl-haus-mdp-servers

Container image build repository for market data platform data plane servers.

Overview

This package provides the server entry points and Docker container images for the Kuhl Haus Market Data Platform (MDP) data plane. Each server wraps components from the kuhl-haus-mdp library and runs as an independently scalable container in Kubernetes.

Servers

Market Data Listener (MDL)

WebSocket client connecting to Massive.com, routing events to RabbitMQ queues with minimal processing overhead.

Market Data Processor (MDP)

Horizontally-scalable event processor with semaphore-based concurrency, delegating to pluggable analyzers and writing results to Redis cache.

Leaderboard Analyzer (LBA)

Redis pub/sub consumer running leaderboard and trade analyzers with sequential message processing.

Widget Data Service (WDS)

FastAPI/WebSocket-to-Redis bridge providing real-time streaming to client applications with fan-out pattern.

Each server has a standard Dockerfile and an OpenTelemetry-instrumented variant (*_otel.Dockerfile) for production observability.

Container Images

Server

Dockerfile

Entry Point

MDL

mdl.Dockerfile / mdl_otel.Dockerfile

kuhl_haus.servers.mdl_server:app

MDP

mdp.Dockerfile / mdp_otel.Dockerfile

kuhl_haus.servers.mdp_server:app

LBA

lba.Dockerfile / lba_otel.Dockerfile

kuhl_haus.servers.lba_server:app

WDS

wds.Dockerfile / wds_otel.Dockerfile

kuhl_haus.servers.wds_server:app

All images extend base.Dockerfile, which installs dependencies and the package in editable mode.

Code Organization

The platform consists of four main packages:

  • Market data processing library (kuhl-haus-mdp) - Core library with shared data processing logic

  • Backend Services (kuhl-haus-mdp-servers) - Market data listener, processor, and widget service

  • Frontend Application (kuhl-haus-mdp-app) - Web-based user interface and API

  • Deployment Automation (kuhl-haus-mdp-deployment) - Docker Compose, Ansible playbooks and Kubernetes manifests for environment provisioning

Documentation

For architecture details, component descriptions, and API reference, see the kuhl-haus-mdp documentation on Read the Docs.

Additional Resources

📖 Blog Series:

Project details


Download files

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

Source Distribution

kuhl_haus_mdp_servers-0.1.26.tar.gz (11.7 kB view details)

Uploaded Source

Built Distribution

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

kuhl_haus_mdp_servers-0.1.26-py3-none-any.whl (14.6 kB view details)

Uploaded Python 3

File details

Details for the file kuhl_haus_mdp_servers-0.1.26.tar.gz.

File metadata

  • Download URL: kuhl_haus_mdp_servers-0.1.26.tar.gz
  • Upload date:
  • Size: 11.7 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for kuhl_haus_mdp_servers-0.1.26.tar.gz
Algorithm Hash digest
SHA256 3b1fa7fe2894818dbb86698c4005abac8eff92c455bed4c2502847fad7b15131
MD5 a3cc37a4c1984861caa3e4c1f56b0ca9
BLAKE2b-256 22944f895aef66530832e522bf04cdc2263256db6625d5be18dccc6a8e76af13

See more details on using hashes here.

Provenance

The following attestation bundles were made for kuhl_haus_mdp_servers-0.1.26.tar.gz:

Publisher: publish-to-pypi.yml on kuhl-haus/kuhl-haus-mdp-servers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file kuhl_haus_mdp_servers-0.1.26-py3-none-any.whl.

File metadata

File hashes

Hashes for kuhl_haus_mdp_servers-0.1.26-py3-none-any.whl
Algorithm Hash digest
SHA256 88e6bd94f8c98bbed1b9cd44469423eca8a191f8fc52507d5d8de00e44d2a8b4
MD5 ca2e6607fd48626697753b98354a1e80
BLAKE2b-256 b5d3c7534cf286e42f700cd594dcfc0b9dbcd98d62f0cd1b3bff4ce05e42e4d1

See more details on using hashes here.

Provenance

The following attestation bundles were made for kuhl_haus_mdp_servers-0.1.26-py3-none-any.whl:

Publisher: publish-to-pypi.yml on kuhl-haus/kuhl-haus-mdp-servers

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

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