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.
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
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.
If you want to know which actions are sent to celery, you can find @app.task annotated tasks in the codebase.