Skip to main content

Experimental task class that buffers messages and processes them as a list.

Project description

Celery Batches

https://img.shields.io/pypi/v/celery-batches.svg https://github.com/clokep/celery-batches/actions/workflows/main.yml/badge.svg Documentation Status

Celery Batches provides a Task class that allows processing of multiple Celery task calls together as a list. The buffer of tasks calls is flushed on a timer and based on the number of queued tasks.

Some potential use-cases for batching of task calls include:

  • De-duplicating tasks.

  • Accumulating / only handling the latest task with similar arguments.

  • Bulk inserting / updating of data.

  • Tasks with expensive setup that can run across a range of arguments.

What do I need?

celery-batches version runs on,

  • Python (3.8, 3.9, 3.10, 3.11, 3.12)

  • PyPy3 (7.6)

And is tested with Celery ~= 5.0.

If you’re running an older version of Python, you need to be running an older version of celery-batches:

  • Python 2.7: celery-batches 0.3.

  • Python 3.4: celery-batches 0.2.

  • Python 3.5: celery-batches 0.3.

  • Python 3.6: celery-batches 0.5.

  • Python 3.7: celery-batches 0.7.

If you’re running an older version of Celery, you need to be running an older version of celery-batches:

  • Celery < 4.0: Use celery.contrib.batches instead.

  • Celery 4.0 - 4.3: celery-batches 0.3.

  • Celery 4.4: celery-batches 0.7.

History

Celery Batches was distributed as part of Celery (as celery.contrib.batches) until Celery 4.0. This project updates the Batches code to maintain compatiblity with newer versions of Celery and other fixes. See the Changelog for details.

Additionally, this repository includes the full history of the code from celery.contrib.batches, but rewritten to the celery_batches/__init__.py file.

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

celery_batches-0.9.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

celery_batches-0.9-py3-none-any.whl (8.6 kB view details)

Uploaded Python 3

File details

Details for the file celery_batches-0.9.tar.gz.

File metadata

  • Download URL: celery_batches-0.9.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.0 CPython/3.9.7

File hashes

Hashes for celery_batches-0.9.tar.gz
Algorithm Hash digest
SHA256 4dd63588314d64491aae9384bd54df4fd00b11250ea39c9bdbb79dca6aee9797
MD5 46cb4dfffe33495e6756355aaa2d8309
BLAKE2b-256 5bc0b89d650c1e29b41b5d117e4b2d35c60155542fed1fae44ea4ecb6171aca0

See more details on using hashes here.

File details

Details for the file celery_batches-0.9-py3-none-any.whl.

File metadata

File hashes

Hashes for celery_batches-0.9-py3-none-any.whl
Algorithm Hash digest
SHA256 532ae4f32026b1eac0810dace13389a904611259bbefab816699f77551efbf5b
MD5 270a013fb4fad6e8348b047177f837d3
BLAKE2b-256 3e49127369856386c0fd7ddd3577afa5c5dfca85a53ce2be3d3a5698705f082c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page