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.0.6.tar.gz (23.2 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.0.6-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: py_hydra-1.0.6.tar.gz
  • Upload date:
  • Size: 23.2 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.0.6.tar.gz
Algorithm Hash digest
SHA256 629e16ddfacff6f2156b688f4369008c5bf4aa3c55f3d6fbf7a5d7c5678e3b51
MD5 45c89a8ef91c798e12cbeb069dbafaf1
BLAKE2b-256 9b12f90a9e389b993cffc05d954bfcb673095f2cf1868d969da5a33a188ef233

See more details on using hashes here.

File details

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

File metadata

  • Download URL: py_hydra-1.0.6-py3-none-any.whl
  • Upload date:
  • Size: 26.3 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.0.6-py3-none-any.whl
Algorithm Hash digest
SHA256 8c0d629e9265a4f8efd3358474e0184bd6d6620ca5f2d649cedd5991c0a1c72d
MD5 640cb20b9c6d102e693c9d2f9312a7d1
BLAKE2b-256 610c0c0e5a8c4399f102ccba3cd95d415d8c9382ad4c4586c6f83555f2273b1d

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