Python SDK: Выпуск
Обращение ко всем питонистам, у нас есть хорошие новости. Дни, когда вы хотели использовать временные возможности из коробки, но вынуждены были обойти это, прошли! Мы так рады поделиться тем, что теперь, благодаря выпуску нашего нового Python SDK, еще никогда не было так просто обеспечить надежное выполнение в приложении Python. Надежные системы выполнения запускают наш код таким образом, что сохраняется каждый шаг кода. Если процесс или контейнер, в котором выполняется код, умирает, код автоматически продолжает выполняться в другом процессе со всем неповрежденным состоянием, включая стек вызовов и локальные переменные.
Почему мы создали этот SDK
Сообщество лежит в основе того, что и почему мы делаем то, что делаем. Этот конкретный SDK начинался как управляемый сообществом, основанный на нашем ядре с открытым исходным кодом. Оттуда мы обнаружили, что несколько университетов также использовали его. Мы были настолько воодушевлены импульсом сообщества, что сделали Python полнофункциональным, официально поддерживаемым языком с SDK, написанным и поддерживаемым Temporal. Мы с нетерпением ждем продолжения итерации этого для нашего сообщества, и мы надеемся услышать от вас о том, как мы можем сделать его еще лучше!
Настройка
Предварительные требования: Вам понадобится Go 1.18 или более поздняя версия для запуска нашего сервера Temporalite.
Temporalite
Этот дистрибутив Temporal работает как единый процесс с нулевыми зависимостями во время выполнения.
git clone https://github.com/temporalio/temporalite.git
cd temporalite
go build ./cmd/temporalite
Python
Установите temporalio
из PyPI.
Если вы предпочитаете изолировать и устанавливать в виртуальной среде, вы можете следовать инструкциям в нашем файле README.
Установка
На вкладке терминала перейдите в свой каталог “temporalite” и запустите следующую команду, чтобы запустить процесс Temporal Server и Web UI. Это будет то, с чем взаимодействует Temporal SDK, чтобы сохранить состояние вашего приложения.
temporalite start
Вы должны увидеть несколько прокручиваемых строк текста — это запущенный Temporal Server. Вернитесь и проверьте эту вкладку терминала, когда вы запустите приложение ниже, вы увидите гораздо больше информации.
Если вы хотите изменить свое пространство имен, вы можете передать параметр namespace
команде start следующим образом: ---namespace=okayest-namespace-name-ever
.
По умолчанию Temporal Server будет запущен по адресу 127.0.0.1:7233
, и вы можете посетить Temporal Web UI по адресу http://127.0.0.1:8233
Базовое использование Temporal и Python
Как и в любом другом приложении на Python, у вас может быть целое приложение в одном файле, и в нашем репозитории samples есть отличный пример в стиле “hello world”: hello_activity.py.
Чтобы запустить пример:
git clone https://github.com/temporalio/samples-python.git
cd samples-python
poetry run python hello/hello_activity.py
Вы должны получить:
Result: Hello, World!
И вы должны увидеть выполнение GreetingWorkflow в Web UI.
Реализация
Вы готовы реализовать свои надежды и мечты с помощью Python. Temporal можно использовать по-разному, в зависимости от потребностей вашего приложения. Чтобы помочь с этим, у нас есть несколько примеров приложений, в зависимости от того, что вы ищете. Это должно дать вам представление о том, какие возможности у вас есть с Temporal.
Это была первая статья из серии Python SDK. Так же вы можете продолжить знакомство с данной темой пройдя по ссылкам: