Skip to main content

Flask-Beanstalk

http://img.shields.io/pypi/v/Flask-Beanstalk.png

Utilities for using Beanstalk with Flask

Client

flask_beanstalk.Beanstalk is a simple wrapper for beanstalkc.Connection that allows reading configuration from app.config.

from flask import Flask
from flask_beanstalk import Beanstalk

app = Flask(__name__)
beanstalk = Beanstalk(app)  # or beanstalk.init_app(app)

Configuration

app.config['BEANSTALK_HOST']
app.config['BEANSTALK_PORT']
app.config['BEANSTALK_PARSE_YAML']
app.config['BEANSTALK_CONN_TIMEOUT']

Worker

Define and spawn workers by subclassing from flask_beanstalk.Worker. flask_beanstalk.Worker inherits from gevent.Greenlet but gevent is an optional dependency in case you just want to use the client.

import gevent
from flask_beanstalk import Worker as _Worker

class Worker(_Worker):
  def run(self, job):
    self._logger.info('Received: %r' % job.body)
    job.delete()

workers = Worker.spawn_workers(10)
try:
  while True:
    gevent.sleep(10000)
except KeyboardInterrupt:
  Worker.stop_workers(workers)

Try it out

Install and run beanstalkd if you haven’t done so yet.

git clone https://github.com/marksteve/flask-beanstalk.git
cd flask-beanstalk
mkvirtualenv flask-beanstalk
workon flask-beanstalk
python setup.py develop
python example_worker.py

On another terminal:

workon flask-beanstalk
python example.py

Go to localhost:5000 in your browser to send a job. The worker should be able to accept and process it. Try to send multiple jobs before sending a SIGINT to the worker. Jobs being worked on should be processed first before the worker shuts down.

Metadata

Release files for Flask-Beanstalk 0.0.3

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for Flask-Beanstalk 0.0.3
File Size Uploaded
Flask-Beanstalk-0.0.3.tar.gz 3.1 kB Details

Release files / Flask-Beanstalk-0.0.3.tar.gz

Download URL Flask-Beanstalk-0.0.3.tar.gz
Size 3.1 kB
Tags Source
SHA-256 checksum
How to use checksums
ddfcd74f8c33c900133a8de4bd3c2da67dede3ce8048fd4cd31e4ea8e9a7aa96
BLAKE2b-256 checksum
How to use checksums
083f65766093bc9c746b2f8d03fd9cbdc4f352a9222d0239f456270d64610d49
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No

Release history Release notifications | RSS feed

This release

0.0.3 This release

1 release file

0.0.2

1 release file

0.0.1

1 release file

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page