# @long\_callback with Celery & Redis - how to get the example app work?

**URL:** <https://community.plotly.com/t/long-callback-with-celery-redis-how-to-get-the-example-app-work/57663>\
**Category:** Dash Python\
**Created:** [October 18, 2021, 10:36am UTC](https://community.plotly.com/t/long-callback-with-celery-redis-how-to-get-the-example-app-work/57663 "2021-10-18T10:36:55Z")\
**Posts on this page:** 1\
**Showing post:** 3

<div class="post-metadata">

**Author:** ![sislvacl](https://avatars.discourse-cdn.com/v4/letter/s/ecccb3/32.png) [@sislvacl](https://community.plotly.com/u/sislvacl)\
**Post date:** [October 18, 2021, 1:57pm UTC](https://community.plotly.com/t/long-callback-with-celery-redis-how-to-get-the-example-app-work/57663/3 "2021-10-18T13:57:50Z")

</div>

As I suspected, a separate process for the Celery worker is needed. In fact, two processes - one for the worker and another one for something called _beat_.

How to run the example app:

## 1) Start the redis server

Either with docker:

`$ docker run -p 6379:6379 redis`

Or without docker:

`$ redis-server`

## 2) Start Celery beat and worker processes

(two separate processes in separate terminal windows):

`$ celery -A playground.celery_app beat --loglevel=INFO`

and

`$ celery -A playground.celery_app worker --loglevel=INFO`

## 3) Start the Dash app

`$ python playground.py`

## edit:

The _beat_ process from point 2) is not necessary as @amarv pointed out.

---

_[View the full topic](https://community.plotly.com/t/long-callback-with-celery-redis-how-to-get-the-example-app-work/57663)._
