Курс 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. Работа с NumPy массивами
  2. Работа с SQLite в Python
  3. Применение функции к списку
  4. Работа с кортежами в Python
  5. Метод join() для объединения элементов строки
  6. Открытие и запись файлов
  7. Представление бесконечности в Python
  8. Работа с срезами в Python
  9. Автоматизация действий с Pyautogui
  10. Python: возвращение нескольких значений
  11. Непрерывная проверка в Python
  12. Метод __irshift__ для побитового сдвига вправо
  13. Проверка класса объекта
  14. Основы работы с os
  15. Лямбда-функции в defaultdict
  16. Python 3.12: переиспользование кавычек
  17. Создание вложенного генератора
  18. Генераторы по генератору
  19. Определение размера папок в Python
  20. Структурирование данных с Pydantic
  21. Замена подстроки
  22. Работа с JSON данными в Python
  23. Глобальные переменные в Python
  24. Получение срезов итераторов
  25. Копирование в Python
  26. Обработка данных в Python
  27. Явный импорт в Python
  28. Декораторы в Python
  29. Многострочные комментарии в Python
  30. Python Enum Weekday Usage
  31. Подсчет количества элементов в списке
  32. Создание GUI на Tkinter
  33. Область видимости переменных
  34. Управление виртуальными средами в Python
  35. Работа с enumerate()
  36. Ноутбуки AMD Ryzen ™ 4000: мощность и эффективность
  37. Работа с массивами в Numpy
  38. Работа с NumPy.linalg
  39. Combobox в Tkinter
  40. Оператор морж в Python 3.8
  41. Python и Юникод: работа с цифрами
  42. Подробная информация о %pinfo
  43. Методы Python для работы с данными
  44. EMOT преобразование эмодзи в текст
  45. Управление асинхронными задачами на Python.
  46. Конкатенация строковых литералов

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