Python SDK:您的第一个申请
#编程 #python #temporal #pythonsdk

我想像他们在德克萨斯州一样握住他们,请

previous posts中,我的同事们挖掘了为什么我们建立了Python SDK,工人和工作流程,但是在实践中,这会是什么样?也许您是阅读文章,仔细阅读Developer’s Guide,看一下Python SDK sample apps的人的类型

想打赌?

我作为开发人员倡导者的角色是更多地探索SDK,看看如何以不同的方式将其栩栩如生,这篇文章旨在窥视我自己的时间学习旅程。

就我个人而言,我是那种喜欢做这件事而不是阅读或听到事情的人。因此,虽然文档和视频对我的学习经历至关重要,但“时刻

此外,我是喜欢游戏,拼图和谜语等的人,我倾向于将任何任务变成某种冒险。

因此,尽管有许多不同的时间示例对他人来说很有趣,例如背景检查器,但绝对不是我的茶。

我宁愿构建游戏。

虽然我知道我想构建游戏,但我不确定要做哪个游戏,但是仔细观察扑克后,我很欣赏下注和货币转移将最好地强调暂时性的一致,安全的执行轮流强调信号和查询。

所以我构建了一个扑克应用程序。

为了使真正的用户体验从现有的东西中添加并添加时间,我构建了一个简单的应用程序,而无需任何时间框架。

把事情简单化

让您想象您正在学习一项新技术,例如时间,我不会接受这项新技术 - 并添加一个我从未与之合作过的数据库,并在平台上部署了我从不触摸并构建精心的应用程序;我想保持新技术的精简,并使用我非常舒适的补充技术,以便在弹出错误时,我会立即知道这是否与新技术有关或熟悉的古老技术疼痛点。

如果新技术就像自行车轮一样,我想探索它说话而不是更换整个方向盘或自行车,这样我就可以在将事物带到路上之前非常熟悉。

暂时的平台非常强大,并且具有许多强大的功能,因此,这不是您可能会看到其他一些SDK的插件 - 您只能导入库和库去。遵循our previous posts,我们知道我们需要:

  • 导入时间和异步软件包
  • 连接到时间服务器
  • 启用工人
  • 创建一个工作流
  • 创建一个活动

有很多路径可以将它们融合在一起,但是遵循我们的建议可能会帮助您进行一些绊脚石。此扑克应用程序的下一个版本将有更多的工作流程,儿童工作流程,可能还有另一个活动,并使用信号和查询进行播放,但是对于v1.0,我添加了一个简单的工作流和一个活动。

在扑克游戏中看起来像什么?

让我们从一个简单的工作流开始:

    @workflow.defn
    class PokerWorkflow:
       @workflow.run
       async def run(self) -> None:
   return await workflow.execute_activity(
       poker_game,
       start_to_close_timeout=timedelta(seconds=10),
   )

鉴于这是学习时间的实验,而不一定是实施,我使用一项活动来运行应用程序的主要部分:

    @activity.defn
    async def poker_game() -> None:

请注意,这不是时间的好用 - 理想情况下,本节只会围绕应用程序的钻头进行,因为这是随机库的使用的地方。我将在应用程序的下一个版本中移动。

Playing Poker via CLI

Pycharm的吸引

在我心中,我是一个VIM的人(对不起,不抱歉,Emacs),当我开始这个项目时,我在Vim的Python中写了整个应用程序。

但是,一旦我开始实现连接到服务器的时间方面,启用工人,创建工作流程等,我无法告诉错误消息是来自Python还是Python还是Python或Termalal还是网络,并且IDE降低了在很多噪音上。

因为我正在使用Python编程语言工作,所以我转向了更常用的IDE之一,Pycharm可以让您使用几个简单的步骤进行add the Temporal modules

使用Python软件包工具通过视图将临时软件包添加到当前项目工具窗口| Python包。单击窗口右上角的安装按钮 - 默认情况下最新版本是安装的。

Add Temporal Module to PyCharm

pycharm将确认何时通过屏幕右下角的一个小弹出窗口安装。

Packages Installed Successfully

问问题

寻求帮助,是的,我们有懈怠,但是我们喜欢保留您的问题以备将来使用,因此请使用我们的forum,并记住要通过说明您尝试什么来提出故障排除问题要这样做,要做的特定步骤,预期的结果和实际结果。

或像我一样,只是ask the question

Ask Questions on Forum

下一步

我希望这可以帮助您开始使用Python SDK,但如果没有,我会在论坛上见到您,如果您渴望查看我自己的扑克应用程序feel free的1.0版。对我来说,学习时间的下一步是潜入儿童工作流程,信号和查询到扑克应用程序。

并分享我在此过程中发现的接下来的一些技巧和技巧。

与此同时,随着时间的流逝,您最喜欢的技巧和技巧是什么?还是专门的Python SDK?您是否先对应用程序进行编程,然后从一开始就以时间格式应用时间或以时间格式编写新应用程序?

询问思想want to know

,请务必在此庆祝活动中查看第四篇博客文章,Temporal Python 1.0.0 – A Durable, Distributed Asyncio Event Loop