pip install django-celery-ses
CELERY_BROKER_URL = 'redis://localhost:6379/0'
CELERY_RESULT_BACKEND = 'django-db'
CELERY_ACCEPT_CONTENT = ['application/json']
CELERY_TASK_SERIALIZER = 'json'
CELERY_RESULT_SERIALIZER = 'json'
CELERY_TASK_DEFAULT_QUEUE = 'default'
CELERY_TASK_QUEUES = (
Queue('default', Exchange('default'), routing_key='default'),
Queue('email', routing_key='email'),
)
CELERY_TASK_DEFAULT_EXCHANGE = 'default'
CELERY_TASK_DEFAULT_ROUTING_KEY = 'default'
CELERY_BEAT_SCHEDULE = {
'send_email': {
'task': 'emails.tasks.send_email_task',
},
}
python
from celery import task
from django.core.mail import EmailMessage
@task(name='emails.tasks.send_email_task')
def send_email_task():
email = EmailMessage(
'Subject', 'Message', 'from@example.com', ['to@example.com'])
email.send()
python
EMAIL_BACKEND = 'django_ses.SESBackend'
celery -A your_project_name worker --loglevel=info --concurrency=4
celery -A your_project_name beat --loglevel=info