Temporal Python Pro
Создание устойчивых рабочих процессов с Temporal Python SDK
Создание надежных распределенных систем — сложная задача. Этот навык предоставляет экспертное руководство по Temporal Python SDK для устойчивой оркестраци�� рабочих процессов, обработки ошибок и производственного развертывания.
Скачать ZIP навыка
Загрузить в Claude
Перейдите в Settings → Capabilities → Skills → Upload skill
Включите и начните использовать
Протестировать
Использование «Temporal Python Pro». Создать рабочий процесс для выполнения заказа
Ожидаемый результат:
Определяет рабочий процесс с @workflow.defn, реализует активности validate_order, charge_payment и send_confirmation с правильными политиками повторных попыток и конфигурацией тайм-аутов
Использование «Temporal Python Pro». Обработать ошибку оплаты с компенсацией
Ожидаемый результат:
Показывает шаблон try/except с перехватом ActivityError, реализацию компенсационной активности refund_payment и генерацию событий отмены рабочего процесса
Аудит безопасности
БезопасноStatic analysis scanned 0 files with 0 lines. Risk score is 0/100. No suspicious patterns detected. This is a prompt-only skill providing guidance on Temporal Python SDK usage without executable code. Safe for publication.
Оценка качества
Что вы можете построить
Оркестрация микросервисов
Координация распределенных транзакций между несколькими сервисами с использованием шаблонов саги с компенсационной логикой.
Дл��тельные бизнес-процессы
Реализация рабочих процессов, которые выполняются от часов до лет с автоматическим сохранением состояния и восстановлением.
Конвейеры обработки данных
Создание многоэтапных рабочих процессов преобразования данных с параллельной пакетной обработкой и обработкой ошибок.
Попробуйте эти промпты
Помогите мне создать базовый рабочий процесс Temporal на Python для обработки заказов пользователей. Мне нужно валидировать заказ, списать оплату и отправить подтверждение по электронной почте. Покажите мне определение рабочего процесса и реализацию активностей.
Мне нужно настроить политики повторных попыток для активности, которая вызывает внешний API с ограничением скорости. API разрешает 100 запросов в минуту и может возвращать ошибки 429. Какие настройки политики повторных попыток мне следует использовать?
Как реализовать обработчик сигналов, который позволит пользователям отменить выполняющийся рабочий процесс? Покажите, как валидировать сигнал, корректно обрабатывать отмену и запускать компенсационные активности.
Мне нужно протестировать рабочий процесс, который выполняется 30 дней, используя пропуск времени. Создайте тест, который проверяет, что рабочий процесс завершает все активности в правильном порядке и обрабатывает сценарии тайм-аута.
Лучшие практики
- Держите рабочие процессы сфокусированными на логике оркестрации; перемещайте все внешние вызовы в активности
- Используйте workflow.now() и workflow.random() вместо модулей datetime и random для обеспечения детерминизма
- Реализуйте идемпотентные активности для безопасных повторных попыток при временных сбоях
- Настраивайте соответствующие тайм-ауты: schedule_to_close для общей длительности, start_to_close для отдельных попыток
- Используйте тестовую среду с пропуском времени для быстрого получения обратной связи по длительным рабочим процессам
Избегать
- Использование datetime.now() или random.random() напрямую в коде рабочего процесса нарушает детерминизм
- Прямые вызовы API из рабочих процессов вместо использования активностей
- Отсутствие обработки ActivityError в рабочих процессах, что теряет возможность реализации компенсации
- Блокировка асинхронного цикла событий синхронным кодом в асинхронных активностях
- Превышение лимитов размера полезной нагрузки 2 МБ при передаче больших данных между активностями
Часто задаваемые вопросы
В чем разница между рабочим процессом и активностью в Temporal?
Как тестировать рабочие процессы, которые выполняются несколько дней или недель?
Можно ли обновить код рабочего процесса после развертывания?
Что происходит при сбое активности?
Чем сигналы отличаются от запросов?
Какую модель выполнения следует использовать для активностей?
Сведения для разработчиков
Автор
sickn33Лицензия
MIT
Репозиторий
https://github.com/sickn33/antigravity-awesome-skills/tree/main/skills/temporal-python-proСсылка
main
Структура файлов
📄 SKILL.md