Курс Python → Управление асинхронными задачами на Python.

Библиотека Celery — это инструмент для управления асинхронными задачами в приложениях на Python. Она позволяет отделить выполнение задач от основного приложения, что повышает производительность и масштабируемость проекта. Celery используется для выполнения длительных операций, которые могут занимать много времени, таких как отправка email, обработка изображений, обновление базы данных и другие.

Основными компонентами Celery являются задачи (tasks), брокер сообщений (message broker) и воркеры (workers). Задачи представляют собой функции или методы, которые необходимо выполнить асинхронно. Брокер сообщений используется для передачи задач между приложениями, а воркеры отвечают за выполнение самих задач.

Часто Celery используется в связке с фреймворком Django для обработки фоновых задач. Например, при создании веб-приложения на Django, можно использовать Celery для отправки уведомлений пользователям или генерации отчетов в фоновом режиме, не блокируя основной поток выполнения приложения.


from celery import Celery

app = Celery('tasks', broker='amqp://guest@localhost//')

@app.task
def add(x, y):
    return x + y

В данном примере создается Celery приложение с именем ‘tasks’ и адресом брокера сообщений ‘amqp://guest@localhost//’. Затем определяется задача add, которая складывает два числа и возвращает результат. После определения задачи, ее можно вызывать из других частей приложения для выполнения в фоновом режиме.

Твои коллеги будут рады, поделись в

Автор урока

Дмитрий Комаровский
Дмитрий Комаровский

Автоматизация процессов
в КраснодарБанки.ру

Другие уроки курса "Python"

  1. Возврат нескольких значений из функции
  2. Разработка Telegram-ботов
  3. Работа с комплексными числами
  4. Обработка исключений в Python
  5. Функция map() и ленивая оценка
  6. Функция zip() в Python
  7. Проверка окончания строки с помощью str.endswith()
  8. Транспонирование 2D-массива с помощью zip
  9. Сравнение строк в Python
  10. Операторы объединения в Python 3.9
  11. Управление ресурсами в Python
  12. Нан-рефлексивность в Python
  13. Разрешение имен в Python
  14. Анализ текста на русском языке с помощью Pymystem3
  15. Оператор zip в Python
  16. Преобразование типов данных в set comprehension
  17. Функция с *args.
  18. Логирование с Loguru
  19. Итерация по итерируемым объектам
  20. Создание итератора
  21. Использование метода lower()
  22. Python: цикл for и оператор присваивания
  23. Удаление дубликатов из списка с помощью dict.fromkeys
  24. Извлечение чисел из текста
  25. Поиск частого элемента
  26. Работа с IP-адресами в Python
  27. Извлечение новостей с newspaper3k
  28. Функция product() из itertools
  29. Зарезервированные слова в Python
  30. Замена текста с помощью sub
  31. Retrying в Python: повторные вызовы
  32. Запрос DELETE с библиотекой requests
  33. Сравнение def и lambda в Python
  34. Лямбда-функции в Python
  35. Извлечение статей с newspaper3k
  36. Удаление ресурса в Python
  37. Оператор «is not» в Python
  38. Проверка элементов списка условием
  39. Работа с датами в Python
  40. Метод Self в Python
  41. Пропуск строк в файле с itertools
  42. Замеры производительности в Python
  43. Python Enum Weekday Usage
  44. Создание списка дат
  45. Создание словарей с defaultdict
  46. Перегрузка операторов в Python
  47. Метод join() для объединения элементов строки
  48. Измерение времени выполнения в Python

Marketello читают маркетологи из крутых компаний