Repolode
zappa

zappa/Zappa

Zappa разворачивает Python-приложения на WSGI и ASGI и функции, запускаемые событиями, в AWS Lambda и API Gateway — без серверов, которыми нужно управлять.

Звёзды
3,700
Форки
394
Открытые issues
22
Последний коммит
28 дней назад

Что это?

Zappa — инструмент для развертывания: он упаковывает Python-приложение и его виртуальное окружение в совместимый с Lambda архив, а затем создает в AWS функцию Lambda, маршруты API Gateway и связанные с ними роли IAM. Поддерживаются WSGI-приложения, например Flask, Django, Bottle и Pyramid, а также ASGI-приложения, например FastAPI, Starlette и Quart. Каждый запрос обрабатывает кратковременный вызов Lambda, поэтому приложение масштабируется в зависимости от трафика и не требует постоянно работающего сервера.

Помимо размещения веб-приложений, Zappa может запускать функции по расписанию с помощью cron- или rate-выражений, заменяя настройку Celery beat, а также запускать их в ответ на события AWS — например, загрузки в S3, сообщения SNS, очереди SQS, потоки DynamoDB и Kinesis. Кроме того, Zappa поддерживает асинхронное выполнение задач, удаленный вызов функций и команд управления Django, просмотр логов в реальном времени, откаты и подключение собственных доменов с SSL-сертификатами.

Ключевые возможности

  • 01Развертывает WSGI-приложения (Flask, Django, Bottle, Pyramid) и ASGI-приложения (FastAPI, Starlette, Quart) в AWS Lambda.
  • 02Автоматически создает маршруты API Gateway и роли IAM при развертывании.
  • 03Запускает функции по расписанию с помощью cron- или rate-выражений.
  • 04Запускает функции в ответ на события AWS, например S3, SNS, SQS и DynamoDB.
  • 05Поддерживает асинхронное выполнение задач, удаленный вызов и команды управления Django.
  • 06Поддерживает собственные домены с сертификатами ACM, Let's Encrypt или предоставленными пользователем SSL-сертификатами.

Сценарии использования

  • Размещение API на Flask или Django с небольшой нагрузкой без оплаты постоянно работающего сервера.
  • Запуск периодических задач на Python в AWS без поддержки Celery-воркера.
  • Развертывание сервиса на FastAPI, который масштабируется при непредсказуемом объеме запросов.
  • Обработка загрузок в S3 или сообщений SQS с помощью функций на Python.

Быстрый старт

  1. 1

    Установите Zappa с помощью pip в виртуальное окружение проекта

    pip install zappa
  2. 2

    Создайте настройки развертывания в интерактивном режиме

    zappa init
  3. 3

    Разверните приложение в AWS Lambda

    zappa deploy <stage>

Что важно знать

  • Требуется учетная запись AWS и учетные данные AWS; работает только с AWS Lambda и API Gateway.
  • Zappa необходимо установить в виртуальное окружение, название которого отличается от названия проекта.
  • API Gateway ограничивает время выполнения запросов 30 секундами, а политика IAM по умолчанию предоставляет чрезмерно широкие права.

В подборках

Темы

Частые вопросы

Что такое Zappa?
Zappa разворачивает Python-приложения на WSGI и ASGI и функции, запускаемые событиями, в AWS Lambda и API Gateway — без серверов, которыми нужно управлять. Zappa — инструмент для развертывания: он упаковывает Python-приложение и его виртуальное окружение в совместимый с Lambda архив, а затем создает в AWS функцию Lambda, маршруты API Gateway и связанные с ними роли IAM. Поддерживаются WSGI-приложения, например Flask, Django, Bottle и Pyramid, а также ASGI-приложения, например FastAPI, Starlette и Quart. Каждый запрос обрабатывает кратковременный вызов Lambda, поэтому приложение масштабируется в зависимости от трафика и не требует постоянно работающего сервера.
Zappa можно использовать бесплатно? Какая у него лицензия?
Zappa распространяется с открытым исходным кодом под лицензией MIT. Перед использованием в коммерческих продуктах проверьте условия лицензии.
Zappa всё ещё поддерживается?
Активно поддерживается. Последний коммит в Zappa — 8 окт. 2026 г..
Для чего можно использовать Zappa?
Размещение API на Flask или Django с небольшой нагрузкой без оплаты постоянно работающего сервера. Запуск периодических задач на Python в AWS без поддержки Celery-воркера. Развертывание сервиса на FastAPI, который масштабируется при непредсказуемом объеме запросов. Обработка загрузок в S3 или сообщений SQS с помощью функций на Python.
Как установить Zappa?
Установите Zappa с помощью pip в виртуальное окружение проекта: pip install zappa Создайте настройки развертывания в интерактивном режиме: zappa init Разверните приложение в AWS Lambda: zappa deploy <stage>
Где скачать Zappa?
Исходный код и инструкции по установке — на GitHub: https://github.com/zappa/Zappa

Описание создано ИИ на основе README проекта. Статистика GitHub обновляется ежедневно.

Похожие проекты

CLI и фреймворк на основе YAML для развёртывания кода и облачной инфраструктуры, прежде всего в AWS Lambda и других управляемых облачных сервисах.

46,9 тыс.+7 за неделю5,7 тыс.JavaScriptOtherАктивно поддерживаетсяОбновлён позавчера

Микрофреймворк на Python для создания и развертывания бессерверных приложений в AWS Lambda с CLI и маршрутизацией на основе декораторов.

11,1 тыс.+1 за неделю1 тыс.PythonApache-2.0Активно поддерживаетсяОбновлён 9 дней назад