Skip to main content

distributed, rpc

Project description

Python Hydra

Hydra is a Python implementation of various capabilities used for multi-proces sand multi-host distributed processing and logic. It is design to encompass more and more functionality over time, as new common use cases are identified.

Hydra Distributed Queues

Hydra distribute queues are queues that can be accessed across multiple hosts. There are two types of queues. First, a source queue, where a single host serves a queue that allows a client to populate a common queue on one host, and allow other processes and hosts to get (pull) from this common queue. Secondly, a sink queue, where a single host serves a queue that allows other remote clients to put (push) items into the common queue. These are essentially mirrors of each other.

Motivation

Hydra distributed queues were motivated for use in multi-host, distributed Python testing. A single queue is created and populated with tests to be executed. Remote clients then pull from this queue to get the next test. Only one test is served to one client -- the one that happens to request the next item in the queue.

Likewise, the remote clients can push results to a single sink-queue for the main process to read and collate test results in a single place.

This type of set up allows for very efficient execution. As each client completes one test, it simply pulls the next available test for execution with minimal delay. The queues are joinable queues and the source-queue is a task-based queue that allows signaling start and end of each test executed.

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

py_hydra-1.1.0.tar.gz (69.0 kB view details)

Uploaded Source

Built Distribution

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

py_hydra-1.1.0-py3-none-any.whl (72.8 kB view details)

Uploaded Python 3

File details

Details for the file py_hydra-1.1.0.tar.gz.

File metadata

  • Download URL: py_hydra-1.1.0.tar.gz
  • Upload date:
  • Size: 69.0 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for py_hydra-1.1.0.tar.gz
Algorithm Hash digest
SHA256 9d35ef4fe67dd990501c980fcfc01f8b80684619035293c52d691769144c1567
MD5 90d395816d52ac984a49940463cdb32a
BLAKE2b-256 0a9d0148cb96a5188bd9cf1431093552be8b4211c6c7579919167237c95ed08c

See more details on using hashes here.

File details

Details for the file py_hydra-1.1.0-py3-none-any.whl.

File metadata

  • Download URL: py_hydra-1.1.0-py3-none-any.whl
  • Upload date:
  • Size: 72.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.3

File hashes

Hashes for py_hydra-1.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 559e25bf94ae2fdb477775d716dd53368c4f4def7637a27d0e3c21975673fdc5
MD5 6716d2a4038189e6dff44801c00624c7
BLAKE2b-256 eea6195cf4f3c383f6a5ba4bf3d556e8c17ba954310f9a2a6f413859c8f85b72

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