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.8.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.8-py3-none-any.whl (26.3 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: py_hydra-1.0.8.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.8.tar.gz
Algorithm Hash digest
SHA256 983e969978336271e4cb02eefef50904b7c68816fdb5b1067bfb7eec3af0fd8f
MD5 0000426beb81d48f034a470bf78498f3
BLAKE2b-256 b07335c9fb9588830f2d5b2ed08fd7e7968f26709e3a1f62b4e1cb35498e721c

See more details on using hashes here.

File details

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

File metadata

  • Download URL: py_hydra-1.0.8-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.8-py3-none-any.whl
Algorithm Hash digest
SHA256 ddae69672b5cfb2f7325d7d8adc89939194364cc66211796b65908e1985d612c
MD5 c8949b24ea60f54f27de36bbf0f20632
BLAKE2b-256 848b80a4c1b2c22e9e811ebc82ae1e996b1d1e43fe091bcb7246242c6f69df5b

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