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.9, 3.10, 3.11, 3.12, 3.13, 3.14)

  • PyPy (3.10, 3.11)

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, the last version supporting each Python version is listed below:

  • 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.

  • Python 3.8: celery-batches 0.9.

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.

  • Celery 5.0 - 5.1: celery-batches 0.9.

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.11.tar.gz (8.5 kB view details)

Uploaded Source

Built Distribution

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

celery_batches-0.11-py3-none-any.whl (8.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: celery_batches-0.11.tar.gz
  • Upload date:
  • Size: 8.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.11

File hashes

Hashes for celery_batches-0.11.tar.gz
Algorithm Hash digest
SHA256 a6a408b80d2dddb677b25113a3228a1a5ff00936eb34eedaa3932138a451a9b6
MD5 35d73e21cddb71f9e7c9a6e296a30770
BLAKE2b-256 1c3b70d153e4a394ccab0d4cdb53876c46e62e607e944d20290c34f9887d73a1

See more details on using hashes here.

File details

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

File metadata

  • Download URL: celery_batches-0.11-py3-none-any.whl
  • Upload date:
  • Size: 8.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.11

File hashes

Hashes for celery_batches-0.11-py3-none-any.whl
Algorithm Hash digest
SHA256 3868f621a2805154bc0423f61a49d5fec5b91272c6756f293980b2689ab9da63
MD5 0f6a5898b490459addbb37ef4769f1f4
BLAKE2b-256 edea8cf611e1350abaafdcaba372b7ea40ace6fbaffe2d2ed89616b23ec4e649

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