This is the documentation for the current development code. Choose a version from the menu to see documentation for released versions since v0.7.5.

Monitoring Queue

There might be occurences where your instances behaves slowly. One option would be to inspect the queue to see whether some jobs hang. Read on to learn how.

Celery

BookWyrm uses Celery to manage background jobs.

By default this uses gevent to run 1000 concurrent tasks with greenlet under a single worker. This allow for high throughput of tasks whilst restricting Celery to using a single CPU core, reducing the risk of CPU and RAM overload. If your BookWyrm instance requires more workers, you can increase this with the --scale flag applied to the celery_worker service:

./bw-dev up --scale celery_worker=3

Flower

To watch Celery jobs in real-time BookWyrm uses Flower.

By default you can view flower logs from https://example.com/flower/. You will need to enter the login name and password from your .env file. Celery can help to troubleshoot problems you may be having with your task queue.

Tasks

If you want to know which actions are sent to celery, you can find @app.task annotated tasks in the codebase.