Навыки Temporal Python Pro
📦

Temporal Python Pro

Безопасно

Создание устойчивых рабочих процессов с Temporal Python SDK

Создание надежных распределенных систем — сложная задача. Этот навык предоставляет экспертное руководство по Temporal Python SDK для устойчивой оркестраци�� рабочих процессов, обработки ошибок и производственного развертывания.

Поддерживает: Claude Codex Code(CC)
📊 69 Адекватно
1

Скачать ZIP навыка

2

Загрузить в Claude

Перейдите в Settings → Capabilities → Skills → Upload skill

3

Включите и начните использовать

Протестировать

Использование «Temporal Python Pro». Создать рабочий процесс для выполнения заказа

Ожидаемый результат:

Определяет рабочий процесс с @workflow.defn, реализует активности validate_order, charge_payment и send_confirmation с правильными политиками повторных попыток и конфигурацией тайм-аутов

Использование «Temporal Python Pro». Обработать ошибку оплаты с компенсацией

Ожидаемый результат:

Показывает шаблон try/except с перехватом ActivityError, реализацию компенсационной активности refund_payment и генерацию событий отмены рабочего процесса

Аудит безопасности

Безопасно
v1 • 2/25/2026

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.

0
Просканировано файлов
0
Проанализировано строк
0
находки
1
Всего аудитов
Проблем безопасности не найдено
Проверено: claude

Оценка качества

38
Архитектура
100
Сопровождаемость
87
Контент
31
Сообщество
100
Безопасность
74
Соответствие спецификации

Что вы можете построить

Оркестрация микросервисов

Координация распределенных транзакций между несколькими сервисами с использованием шаблонов саги с компенсационной логикой.

Дл��тельные бизнес-процессы

Реализация рабочих процессов, которые выполняются от часов до лет с автоматическим сохранением состояния и восстановлением.

Конвейеры обработки данных

Создание многоэтапных рабочих процессов преобразования данных с параллельной пакетной обработкой и обработкой ошибок.

Попробуйте эти промпты

Базовая настройка рабочего процесса
Помогите мне создать базовый рабочий процесс 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?
Рабочие процессы определяют логику оркестрации и должны быть детерминированными. Активности выполняют внешние операции, такие как вызовы API или запросы к базе данных. Рабочие процессы вызывают активности, которые выполняют фактическую работу.
Как тестировать рабочие процессы, которые выполняются несколько дней или недель?
Используйте WorkflowEnvironment с включенным пропуском времени. Это выполняет вызовы workflow.sleep() мгновенно, позволяя тестировать рабочие процессы длиной в месяц за секунды при модульном тестировании.
Можно ли обновить код рабочего процесса после развертывания?
Да, но вы должны поддерживать детерминизм для существующих выполняющихся рабочих процессов. Используйте workflow.get_version() для корректной обработки изменений кода и тестируйте с воспроизведением на истории производства.
Что происходит при сбое активности?
Temporal автоматически выполняет повторные попытки на основе вашей конфигурации RetryPolicy. Вы можете указать начальный интервал, коэффициент экспоненциальной задержки, максимальное количество попыток и пометить определенные типы ошибок как не подлежащие повторным попыткам.
Чем сигналы отличаются от запросов?
Сигналы позволяют внешним системам отправлять события, которые изменяют состояние рабочего процесса. Запросы обеспечивают доступ только для чтения к состоянию рабочего процесса для мониторинга. Сигналы могут изменять состояние; запросы — нет.
Какую модель выполнения следует использовать для активностей?
Используйте асинхронные активности для неблокирующего ввода-вывода, ThreadPoolExecutor для блокирующего синхронного ввода-вывода и ProcessPoolExecutor для ресурсоемких задач. Никогда не блокируйте асинхронный цикл событий.

Сведения для разработчиков

Автор

sickn33

Лицензия

MIT

Ссылка

main

Структура файлов

📄 SKILL.md