Skip to main content

TaskMesh is a cloud-agnostic task processing framework starting with Google Cloud Pub/Sub.

Project description

TaskMesh

TaskMesh is a cloud-agnostic task processing framework designed to integrate seamlessly with various cloud messaging services. The initial release supports Google Cloud Pub/Sub, with planned support for AWS SQS and Azure Service Bus. TaskMesh simplifies distributed task execution, ensuring scalability and reliability across multiple cloud providers.

The idea behind this project is to mimic some level level of celery tasks.

The limitation: this only works for a function not on the class methods.

Features

✅ Google Cloud Pub/Sub
✅ AWS SQS
🚧 Azure Service Bus (Ongoing development)
⬜ RabbitMQ (Planned)
⬜ Kafka (Planned)

Usage

This package is used specially on micro-service architecture, where we need to pass message between services.

In the examples folder, there are files for each provider. The file accept argument in command line. --subscribe <topic> and no argument.

Providing --subscribe <topic> will subscribe to the topic provided in command line and will process messages and call the desired function.

The no argument will call the function directly and delayed. The delayed call will utilize message broker for the respective provider

Publisher Instance

python examples/aws.py
python examples/gcp.py

Listener Instance

python examples/gcp.py taskmesh-sub
python examples/aws.py taskmesh

Note: gcp uses subscription id and aws use topic name

This will create instance that listens to the messages on the message broker and process it by calling the desired function.

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

taskmesh-0.0.1.tar.gz (19.8 kB view details)

Uploaded Source

Built Distribution

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

taskmesh-0.0.1-py3-none-any.whl (19.2 kB view details)

Uploaded Python 3

File details

Details for the file taskmesh-0.0.1.tar.gz.

File metadata

  • Download URL: taskmesh-0.0.1.tar.gz
  • Upload date:
  • Size: 19.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for taskmesh-0.0.1.tar.gz
Algorithm Hash digest
SHA256 33c7ce4c541531dc3e07a3eee719ec4a3ccd93a9c0ea943e4f6d14757ec0fa1e
MD5 1279302f3abd3f4544959d4a8073c775
BLAKE2b-256 67fa7fefe3ef89f4bf177a7ec92a04ec858ff17f7afe8be0163edd6480566e43

See more details on using hashes here.

File details

Details for the file taskmesh-0.0.1-py3-none-any.whl.

File metadata

  • Download URL: taskmesh-0.0.1-py3-none-any.whl
  • Upload date:
  • Size: 19.2 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.9.21

File hashes

Hashes for taskmesh-0.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 4772edc0494f508f450ba6510bff4250bb15ef53c16d80dd428efa2e7e07e618
MD5 8ff7cc3015a715202b859bb66c42b308
BLAKE2b-256 d115bc9695782e771c10dc7f3c309cb0b2d690e9f1960dcfabac5099056f6c0f

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