โ† ะฒัะต ะฒะธะดะตะพ

Durable Execution Using Temporal - Ori Zeiri

TechGym ยท 2026-05-31 ยท 35ะผ 17ั ยท 91 ะฟั€ะพัะผะพั‚ั€ะพะฒ ยท YouTube โ†—

ะขะพะฟะธะบะธ: durable-execution

๐ŸŽง ะัƒะดะธะพ

๐Ÿ“ Summary

model=deepseek-v4-flash ยท prompt=summary-v7 ยท 11ย 135โ†’2ย 521 tokens ยท 2026-07-20 14:57:37

๐ŸŽฏ ะ“ะปะฐะฒะฝะฐั ััƒั‚ัŒ

Temporal โ€” open-source ะฟะปะฐั‚ั„ะพั€ะผะฐ ะดะปั durable execution (ะพั‚ะบะฐะทะพัƒัั‚ะพะนั‡ะธะฒะพะณะพ ะฒั‹ะฟะพะปะฝะตะฝะธั), ะบะพั‚ะพั€ะฐั ะฟะพะทะฒะพะปัะตั‚ ะฟะธัะฐั‚ัŒ ะผะตะฝัŒัˆะต ะบะพะดะฐ, ะดะตะปะตะณะธั€ัƒั ะผะตั…ะฐะฝะธะทะผั‹ ะฟะพะฒั‚ะพั€ะฝั‹ั… ะฟะพะฟั‹ั‚ะพะบ, ะพั‚ัะปะตะถะธะฒะฐะฝะธั ัะพัั‚ะพัะฝะธั ะธ ะฒะพััั‚ะฐะฝะพะฒะปะตะฝะธั ะฟะพัะปะต ัะฑะพะตะฒ. ะ’ะผะตัั‚ะพ ั‚ะพะณะพ ั‡ั‚ะพะฑั‹ ะฒั€ัƒั‡ะฝัƒัŽ ัั‚ั€ะพะธั‚ัŒ retry-ะผะตั…ะฐะฝะธะทะผั‹, state machines ะธ ะบะพะผะฟะตะฝัะฐั†ะธะพะฝะฝั‹ะต ั‚ั€ะฐะฝะทะฐะบั†ะธะธ, ั€ะฐะทั€ะฐะฑะพั‚ั‡ะธะบ ะพะฟะธัั‹ะฒะฐะตั‚ ะฑะธะทะฝะตั-ะปะพะณะธะบัƒ ะฒ ะฒะธะดะต Workflows ะธ Activities, ะฐ Temporal ะณะฐั€ะฐะฝั‚ะธั€ัƒะตั‚, ั‡ั‚ะพ ะฒั‹ะฟะพะปะฝะตะฝะธะต ะฟั€ะพะดะพะปะถะธั‚ัั ั ะฟะพัะปะตะดะฝะตะน ัƒัะฟะตัˆะฝะพะน ั‚ะพั‡ะบะธ ะดะฐะถะต ะฟะพัะปะต ะฟะฐะดะตะฝะธั ัะตั€ะฒะตั€ะฐ, ะฟะตั€ะตะทะฐะณั€ัƒะทะบะธ ะฟะพะดะฐ ะธะปะธ ะพะฑั€ั‹ะฒะฐ ัะตั‚ะธ.

ะŸั€ะพะฑะปะตะผะฐ: ัะฑะพะธ ะฒ ั€ะฐัะฟั€ะตะดะตะปั‘ะฝะฝั‹ั… ัะธัั‚ะตะผะฐั…

ะ’ ะปัŽะฑะพะน ัะธัั‚ะตะผะต ั ะฝะตัะบะพะปัŒะบะธะผะธ ะผะธะบั€ะพัะตั€ะฒะธัะฐะผะธ ะบะพะปะธั‡ะตัั‚ะฒะพ ะฟะพั‚ะตะฝั†ะธะฐะปัŒะฝั‹ั… ั‚ะพั‡ะตะบ ะพั‚ะบะฐะทะฐ ั€ะตะทะบะพ ะฒะพะทั€ะฐัั‚ะฐะตั‚: ั‚ะฐะนะผะฐัƒั‚ั‹, ัะตั‚ะตะฒั‹ะต ะพัˆะธะฑะบะธ, ะฟะตั€ะตะทะฐะณั€ัƒะทะบะธ ะฟะพะดะพะฒ, ั‡ะฐัั‚ะธั‡ะฝั‹ะต ัะฑะพะธ. ะ ะฐะทั€ะฐะฑะพั‚ั‡ะธะบะธ ั‡ะฐัั‚ะพ ัั‚ะฐะปะบะธะฒะฐัŽั‚ัั ั ัะธั‚ัƒะฐั†ะธะตะน, ะบะพะณะดะฐ ะฟะพัะปะต ะดะตะฟะปะพั ะฒัั‘ ะฒั‹ะณะปัะดะธั‚ ั…ะพั€ะพัˆะพ, ะฝะพ ั‡ะตั€ะตะท ะฟะฐั€ัƒ ะผะธะฝัƒั‚ ะพะดะธะฝ ะธะท ะฟะพะดะพะฒ ะฟะตั€ะตะทะฐะณั€ัƒะถะฐะตั‚ัั, ะธ ะฝะตั‚ ัะพั…ั€ะฐะฝั‘ะฝะฝะพะณะพ ัะพัั‚ะพัะฝะธั โ€” ะดะฐะฝะฝั‹ะต ะฒ ะฑะฐะทะต ะตัั‚ัŒ, ะฝะพ ะธะฝั„ะพั€ะผะฐั†ะธั ะพ ั‚ะพะผ, ะบะฐะบะพะน ะบะพะด ัƒะถะต ะฒั‹ะฟะพะปะฝะธะปัั, ั‚ะตั€ัะตั‚ัั. ะŸั€ะธั…ะพะดะธั‚ัั ะฒะพััั‚ะฐะฝะฐะฒะปะธะฒะฐั‚ัŒ ะฒั€ัƒั‡ะฝัƒัŽ ะฟะพ ะปะพะณะฐะผ, ะฐ ะฒะตั€ะฝัƒั‚ัŒัั ั‚ะพั‡ะฝะพ ะบ ะผะพะผะตะฝั‚ัƒ ะพัั‚ะฐะฝะพะฒะบะธ ะฝะตะฒะพะทะผะพะถะฝะพ.

ะะฐะธะฒะฝะพะต ั€ะตัˆะตะฝะธะต: retry + idempotency โ€” ะฝะพ ั ะบัƒั‡ะตะน ะพะณะพะฒะพั€ะพะบ

ะ ะฐััะผะพั‚ั€ะธะผ ะฟั€ะธะผะตั€ ะพะฝะปะฐะนะฝ-ะฟะปะฐั‚ะตะถะฐ. ะคั€ะพะฝั‚ะตะฝะด ะพั‚ะฟั€ะฐะฒะปัะตั‚ ะทะฐะฟั€ะพั ะฒ ะฑัะบะตะฝะด, ะบะพั‚ะพั€ั‹ะน ะดะพะปะถะตะฝ: ัะฟะธัะฐั‚ัŒ ะดะตะฝัŒะณะธ ั ะบะปะธะตะฝั‚ะฐ (ั‡ะตั€ะตะท ะฟะปะฐั‚ะตะถะฝะพะณะพ ะฟั€ะพะฒะฐะนะดะตั€ะฐ), ัะพั…ั€ะฐะฝะธั‚ัŒ ั‚ั€ะฐะฝะทะฐะบั†ะธัŽ ะฒ ะ‘ะ” ะธ ะพั‚ะฟั€ะฐะฒะธั‚ัŒ email ั ะบะฒะธั‚ะฐะฝั†ะธะตะน. ะกะฐะผะพะต ะฟั€ะพัั‚ะพะต โ€” ะพะฑะตั€ะฝัƒั‚ัŒ ะฒะตััŒ ะฟั€ะพั†ะตัั ะฒ ั†ะธะบะป ั try/except ะธ ะฟะพะฒั‚ะพั€ะฐะผะธ. ะะพ ั‡ั‚ะพ, ะตัะปะธ ัะฟะธัะฐะฝะธะต ัƒะถะต ะฟั€ะพัˆะปะพ, ะฐ ะ‘ะ” ัƒะฟะฐะปะฐ? ะŸะพะฒั‚ะพั€ ะฟั€ะธะฒะตะดั‘ั‚ ะบ ะดะฒะพะนะฝะพะผัƒ ัะฟะธัะฐะฝะธัŽ. ะัƒะถะตะฝ ะผะตั…ะฐะฝะธะทะผ ะธะดะตะผะฟะพั‚ะตะฝั‚ะฝะพัั‚ะธ: ะฟั€ะพะฒะตั€ัั‚ัŒ, ะฑั‹ะปะฐ ะปะธ ัƒะถะต ัะฟะธัะฐะฝะฐ ััƒะผะผะฐ, ะธ ะตัะปะธ ะดะฐ โ€” ะฝะต ะฟะพะฒั‚ะพั€ัั‚ัŒ. ะญั‚ะพ ะฒะตะดั‘ั‚ ะบ ัƒัะปะพะถะฝะตะฝะธัŽ: ะฝัƒะถะฝะพ ั…ั€ะฐะฝะธั‚ัŒ ัะพัั‚ะพัะฝะธะต, ะดะตะปะฐั‚ัŒ ะฟั€ะพะฒะตั€ะบะธ ะฟะตั€ะตะด ะบะฐะถะดั‹ะผ ัˆะฐะณะพะผ, ะฟะธัะฐั‚ัŒ ะบะพะผะฟะตะฝัะฐั†ะธะพะฝะฝั‹ะต ะดะตะนัั‚ะฒะธั ะฟั€ะธ ั‡ะฐัั‚ะธั‡ะฝั‹ั… ะพั‚ะบะฐะทะฐั…. ะ’ ะธั‚ะพะณะต ะฒะผะตัั‚ะพ ะฟั€ะพัั‚ะพะณะพ ัะฟะธัะฐะฝะธั ัั‚ั€ะพะธั‚ัั ั†ะตะปะฐั ัะธัั‚ะตะผะฐ Workflowโ€™ะพะฒ.

Workflows ะธ Activities ะฒ Temporal

ะ’ Temporal ะฒัั ะปะพะณะธะบะฐ ะดะตะปะธั‚ัั ะฝะฐ ะดะฒะฐ ัƒั€ะพะฒะฝั:

Workflow โ€” ัั‚ะพ ะบะฐะบ ะฟั€ะพะณั€ะฐะผะผะฐ, ะบะพั‚ะพั€ะฐั ะผะพะถะตั‚ ยซะทะฐัั‹ะฟะฐั‚ัŒยป ะฝะฐ ะฝะตะพะฟั€ะตะดะตะปั‘ะฝะฝะพะต ะฒั€ะตะผั ะธ ะฟั€ะพัั‹ะฟะฐั‚ัŒัั ะฟั€ะธ ะฝะฐัั‚ัƒะฟะปะตะฝะธะธ ัะพะฑั‹ั‚ะธะน. ะšะฐะถะดั‹ะน Activity ะดะพะปะถะตะฝ ะฑั‹ั‚ัŒ ะธะดะตะผะฟะพั‚ะตะฝั‚ะฝั‹ะผ ะธ ะผะฐะบัะธะผะฐะปัŒะฝะพ ะฐั‚ะพะผะฐั€ะฝั‹ะผ โ€” ะบะฐะบ ะบะฝะพะฟะบะฐ ะฒะบะปัŽั‡ะตะฝะธั/ะฒั‹ะบะปัŽั‡ะตะฝะธั ะบะพะผะฟัŒัŽั‚ะตั€ะฐ: ะดะปั ะบะฐะถะดะพะณะพ ัะพัั‚ะพัะฝะธั ะตัั‚ัŒ ัะฒะพะน Activity (ะฒะบะปัŽั‡ะธั‚ัŒ, ะฒั‹ะบะปัŽั‡ะธั‚ัŒ).

ะ’ ะบะพะดะต Workflow ะพะฟั€ะตะดะตะปัะตั‚ัั ะบะฐะบ ะบะปะฐัั ั ะฐะฝะฝะพั‚ะฐั†ะธัะผะธ, ะฒะฝัƒั‚ั€ะธ ะบะพั‚ะพั€ะพะณะพ ะฒั‹ะทั‹ะฒะฐัŽั‚ัั Workflow.execute_activity(). ะ’ะตััŒ ะบะพะด, ะบะพั‚ะพั€ั‹ะน ั€ะฐะฝัŒัˆะต ั‚ั€ะตะฑะพะฒะฐะป ั†ะธะบะปะพะฒ ั retry, ัะฒะพะดะธั‚ัั ะบ ะฟะฐั€ะต ะดะตะบะพั€ะฐั‚ะพั€ะพะฒ.

ะั€ั…ะธั‚ะตะบั‚ัƒั€ะฐ Temporal

ะšะปะฐัั‚ะตั€ Temporal ัะพัั‚ะพะธั‚ ะธะท ั‚ั€ั‘ั… ะบะปัŽั‡ะตะฒั‹ั… ัะตั€ะฒะธัะพะฒ:

  1. Frontend Service โ€” ัˆะปัŽะท ะดะปั ะฒัะตั… ะบะปะธะตะฝั‚ะพะฒ. ะŸั€ะธะฝะธะผะฐะตั‚ ะทะฐะฟั€ะพัั‹ ะฝะฐ ะทะฐะฟัƒัะบ Workflowโ€™ะพะฒ ะธ ะฟั€ะตะดะพัั‚ะฐะฒะปัะตั‚ ะฒัั‚ั€ะพะตะฝะฝั‹ะน ะฒะตะฑ-ะธะฝั‚ะตั€ั„ะตะนั ะดะปั ะผะพะฝะธั‚ะพั€ะธะฝะณะฐ ะฒั‹ะฟะพะปะฝะตะฝะธั.
  2. History Service โ€” ะทะฐะฟะธัั‹ะฒะฐะตั‚ ะบะฐะถะดัƒัŽ ั‚ะพั‡ะบัƒ ะฒั‹ะฟะพะปะฝะตะฝะธั (Workflow started, Activity started, Activity completed ะธ ั‚.ะด.). ะญั‚ะพั‚ ะถัƒั€ะฝะฐะป ะฟะพะทะฒะพะปัะตั‚ ะฒ ะปัŽะฑะพะน ะผะพะผะตะฝั‚ ะฒะพััั‚ะฐะฝะพะฒะธั‚ัŒ ั‚ะพั‡ะฝะพะต ัะพัั‚ะพัะฝะธะต.
  3. Matching Service โ€” ัƒะฟั€ะฐะฒะปัะตั‚ ะพั‡ะตั€ะตะดัะผะธ ะทะฐะดะฐั‡ (Task Queues). ะšะพะณะดะฐ History Service ั„ะธะบัะธั€ัƒะตั‚ ะทะฐะฒะตั€ัˆะตะฝะธะต ัˆะฐะณะฐ, ะพะฝ ัƒะฒะตะดะพะผะปัะตั‚ Matching Service, ั‚ะพั‚ ะฟะพะผะตั‰ะฐะตั‚ ะฝะพะฒัƒัŽ ะทะฐะดะฐั‡ัƒ ะฒ ะพั‡ะตั€ะตะดัŒ.
  4. Worker Service โ€” ัั‚ะพ ะบะพะด, ะบะพั‚ะพั€ั‹ะน ะฒั‹ ะฟะธัˆะตั‚ะต. Worker ะฟะพะดะฟะธัั‹ะฒะฐะตั‚ัั ะฝะฐ ะพะฟั€ะตะดะตะปั‘ะฝะฝัƒัŽ ะพั‡ะตั€ะตะดัŒ, ะทะฐะฑะธั€ะฐะตั‚ ะทะฐะดะฐั‡ะธ ะธ ะฒั‹ะฟะพะปะฝัะตั‚ Workflowโ€™ั‹ ะธ Activities. ะกะฐะผ ะฟะพ ัะตะฑะต Worker ยซะณะปัƒะฟั‹ะนยป โ€” ะพะฝ ะฝะต ะทะฝะฐะตั‚, ั‡ั‚ะพ ะฑัƒะดะตั‚ ะดะตะปะฐั‚ัŒ, ะฟั€ะพัั‚ะพ ะฑะตั€ั‘ั‚ ัะปะตะดัƒัŽั‰ัƒัŽ ะทะฐะดะฐั‡ัƒ.

ะœะตั…ะฐะฝะธะทะผ ั€ะฐะฑะพั‚ั‹: Worker ะทะฐะฑะธั€ะฐะตั‚ ะทะฐะดะฐั‡ัƒ ะธะท Matching Service, ะฒั‹ะฟะพะปะฝัะตั‚ Activity, ะฒะพะทะฒั€ะฐั‰ะฐะตั‚ ั€ะตะทัƒะปัŒั‚ะฐั‚ ะฒ History Service, ะบะพั‚ะพั€ั‹ะน ะพะฑะฝะพะฒะปัะตั‚ ะปะพะณ ะธ ัƒะฒะตะดะพะผะปัะตั‚ Matching ะพ ัะปะตะดัƒัŽั‰ะตะผ ัˆะฐะณะต. ะขะฐะบ ะพะฑั€ะฐะทัƒะตั‚ัั ะฑะตัะบะพะฝะตั‡ะฝั‹ะน ั†ะธะบะป.

ะ”ะตะผะพะฝัั‚ั€ะฐั†ะธั: ะทะฐะฟัƒัะบ ะธ ะผะพะฝะธั‚ะพั€ะธะฝะณ

ะะฐ ะฟั€ะฐะบั‚ะธะบะต ะฒัั‘ ะฒั‹ะณะปัะดะธั‚ ั‚ะฐะบ: ะทะฐะฟัƒัะบะฐะตั‚ัั ะปะพะบะฐะปัŒะฝั‹ะน Temporal Server ะบะพะผะฐะฝะดะพะน temporal server start-dev. ะžะฝ ะฟะพะดะฝะธะผะฐะตั‚ ะฒัะต ะบะพะผะฟะพะฝะตะฝั‚ั‹ ะบะปะฐัั‚ะตั€ะฐ ะฒ Docker. ะ—ะฐั‚ะตะผ ะทะฐะฟัƒัะบะฐะตั‚ัั Python-Worker, ะบะพั‚ะพั€ั‹ะน ะพะดะฝะพะฒั€ะตะผะตะฝะฝะพ ัะปัƒัˆะฐะตั‚ ะพั‡ะตั€ะตะดัŒ ะทะฐะดะฐั‡ ะธ ั€ะตะณะธัั‚ั€ะธั€ัƒะตั‚ Workflowโ€™ั‹ ั Activities. ะŸะพัะปะต ัั‚ะพะณะพ ะฒั‹ะฟะพะปะฝัะตั‚ัั ะบะปะธะตะฝั‚ัะบะธะน ะบะพะด, ะพั‚ะฟั€ะฐะฒะปััŽั‰ะธะน ะทะฐะฟั€ะพั ะฝะฐ ะทะฐะฟัƒัะบ Workflowโ€™ะฐ.

ะ’ะตะฑ-ะธะฝั‚ะตั€ั„ะตะนั Temporal (ะฟะพ ัƒะผะพะปั‡ะฐะฝะธัŽ ะฝะฐ localhost) ะฟะพะบะฐะทั‹ะฒะฐะตั‚ ะฒัะต ะฐะบั‚ะธะฒะฝั‹ะต ะธ ะทะฐะฒะตั€ัˆั‘ะฝะฝั‹ะต Workflowโ€™ั‹. ะšะปะธะบะฝัƒะฒ ะฝะฐ ะบะพะฝะบั€ะตั‚ะฝั‹ะน ID, ะผะพะถะฝะพ ัƒะฒะธะดะตั‚ัŒ ะดะตั‚ะฐะปัŒะฝัƒัŽ ะฒั€ะตะผะตะฝะฝัƒัŽ ัˆะบะฐะปัƒ: ะบะพะณะดะฐ ะฝะฐั‡ะฐะปัั Workflow, ะบะพะณะดะฐ ัั‚ะฐั€ั‚ะพะฒะฐะป Activity, ะบะพะณะดะฐ ะทะฐะฒะตั€ัˆะธะปัั ะธ ั‚ะฐะบ ะดะฐะปะตะต. ะญั‚ะพั‚ UI ะฐะณะฝะพัั‚ะธั‡ะตะฝ ะบ ัะทั‹ะบัƒ ะธ ั‚ะธะฟัƒ ะฑะธะทะฝะตั-ะปะพะณะธะบะธ โ€” ะปัŽะฑั‹ะต Workflowโ€™ั‹, ะทะฐะฟัƒั‰ะตะฝะฝั‹ะต ั‡ะตั€ะตะท Temporal, ะพั‚ะพะฑั€ะฐะถะฐัŽั‚ัั ะทะดะตััŒ ะฐะฒั‚ะพะผะฐั‚ะธั‡ะตัะบะธ.

Retry Policy ะธ ะพะฑั€ะฐะฑะพั‚ะบะฐ ะพัˆะธะฑะพะบ

ะ”ะปั ะบะฐะถะดะพะณะพ Workflow ะธ Activity ะผะพะถะฝะพ ะทะฐะดะฐั‚ัŒ Retry Policy: ะผะฐะบัะธะผะฐะปัŒะฝะพะต ะบะพะปะธั‡ะตัั‚ะฒะพ ะฟะพะฟั‹ั‚ะพะบ, ะธะฝั‚ะตั€ะฒะฐะป ะผะตะถะดัƒ ะฝะธะผะธ, ะผะฐะบัะธะผะฐะปัŒะฝั‹ะน ะธะฝั‚ะตั€ะฒะฐะป, ะฐ ั‚ะฐะบะถะต ัะฟะธัะพะบ ะธัะบะปัŽั‡ะตะฝะธะน, ะฟั€ะธ ะบะพั‚ะพั€ั‹ั… ะฟะพะฒั‚ะพั€ ะฝะต ะฝัƒะถะตะฝ (ะฝะฐะฟั€ะธะผะตั€, ะตัะปะธ ะพัˆะธะฑะบะฐ ะฝะตะธัะฟั€ะฐะฒะธะผะฐ โ€” ัั€ะฐะทัƒ ะฒะตั€ะฝัƒั‚ัŒ ะพัˆะธะฑะบัƒ ะฟะพะปัŒะทะพะฒะฐั‚ะตะปัŽ). ะ’ัั‘ ัั‚ะพ ะบะพะฝั„ะธะณัƒั€ะธั€ัƒะตั‚ัั ะดะตะบะปะฐั€ะฐั‚ะธะฒะฝะพ, ะฑะตะท ะฝะฐะฟะธัะฐะฝะธั ั†ะธะบะปะพะฒ.

ะŸั€ะธะผะตั€ ะบะพะดะฐ: ะฒ Workflow ะพะฟั€ะตะดะตะปัะตั‚ัั retry_policy = RetryPolicy(maximum_attempts=3, backoff_coefficient=2), ะทะฐั‚ะตะผ ะฟั€ะธ ะฒั‹ะทะพะฒะต execute_activity(Withdraw, payment_details, retry_policy=retry_policy) Temporal ัะฐะผ ะดะตะปะฐะตั‚ ะฟะพะฒั‚ะพั€ั‹ ั ัะบัะฟะพะฝะตะฝั†ะธะฐะปัŒะฝะพะน ะทะฐะดะตั€ะถะบะพะน.

ะŸั€ะธะผะตั€ ะฟะตั€ะตะฒะพะดะฐ ะดะตะฝะตะณ

ะ’ ะดะตะผะพ ะธัะฟะพะปัŒะทัƒะตั‚ัั ัั†ะตะฝะฐั€ะธะน ะฟะตั€ะตะฒะพะดะฐ ัั€ะตะดัั‚ะฒ ะผะตะถะดัƒ ัั‡ะตั‚ะฐะผะธ. Activities: Withdraw ะธ Deposit. ะžะฑะฐ ะดะพะปะถะฝั‹ ะฑั‹ั‚ัŒ ะธะดะตะผะฟะพั‚ะตะฝั‚ะฝั‹ะผะธ. Workflow ะฒั‹ะฟะพะปะฝัะตั‚ัั ั‚ะฐะบ: ัะฝะฐั‡ะฐะปะฐ ะฒั‹ะทั‹ะฒะฐะตั‚ัั Withdraw, ะฟะพัะปะต ัƒัะฟะตั…ะฐ โ€” Deposit, ะทะฐั‚ะตะผ ะฒะพะทะฒั€ะฐั‰ะฐะตั‚ัั ะฟะพะดั‚ะฒะตั€ะถะดะตะฝะธะต. ะ•ัะปะธ Worker ะฟะฐะดะฐะตั‚ ะฒะพ ะฒั€ะตะผั ะฒั‹ะฟะพะปะฝะตะฝะธั, Temporal ะฝะต ั‚ะตั€ัะตั‚ ัะพัั‚ะพัะฝะธะต: ะฟั€ะธ ะฟะตั€ะตะทะฐะฟัƒัะบะต Worker ะฟั€ะพะดะพะปะถะฐะตั‚ ั ั‚ะพะณะพ Activity, ะบะพั‚ะพั€ั‹ะน ะฝะต ะฑั‹ะป ะทะฐะฒะตั€ัˆั‘ะฝ.

ะžะดะฝะพ ะธะท ะฝะฐะณะปัะดะฝั‹ั… ะธัะฟั‹ั‚ะฐะฝะธะน: ะทะฐะฟัƒัะบะฐะตั‚ัั Workflow, Worker ะฒั€ะตะผะตะฝะฝะพ ะพัั‚ะฐะฝะฐะฒะปะธะฒะฐะตั‚ัั. ะ’ UI ะฒะธะดะฝะพ, ั‡ั‚ะพ Workflow ะฟะตั€ะตัˆั‘ะป ะฒ ัะพัั‚ะพัะฝะธะต ยซRunningยป, ะทะฐะดะฐั‡ะฐ ะฒะธัะธั‚ ะฒ ะพั‡ะตั€ะตะดะธ ะฟะตั€ะตะดะฐั‡ะธ ะดะตะฝะตะณ (Task Queue). ะšะฐะบ ั‚ะพะปัŒะบะพ Worker ัะฝะพะฒะฐ ะทะฐะฟัƒัะบะฐะตั‚ัั, ะพะฝ ะผะณะฝะพะฒะตะฝะฝะพ ะฟะพะดั…ะฒะฐั‚ั‹ะฒะฐะตั‚ ะทะฐะดะฐั‡ัƒ, ะฒั‹ะฟะพะปะฝัะตั‚ Activity, ะธ ะฟั€ะพั†ะตัั ะทะฐะฒะตั€ัˆะฐะตั‚ัั. ะ’ะตััŒ ะถัƒั€ะฝะฐะป ะธัั‚ะพั€ะธะธ ัะพั…ั€ะฐะฝัะตั‚ัั ะฑะตะท ะฟะพั‚ะตั€ัŒ.

Temporal ะธ AI-ะฒะพั€ะบั„ะปะพัƒ

Temporal ะฐะบั‚ะธะฒะฝะพ ะธัะฟะพะปัŒะทัƒะตั‚ัั ะดะปั ะฟะพัั‚ั€ะพะตะฝะธั AI-ะฐะณะตะฝั‚ะพะฒ. ะะฐะฟั€ะธะผะตั€, ะฟั€ะธ ะฟะพะผะพั‰ะธ Temporal ะผะพะถะฝะพ ั€ะตะฐะปะธะทะพะฒะฐั‚ัŒ LLM-ะฟะฐะนะฟะปะฐะนะฝ, ะณะดะต ะฐะณะตะฝั‚ ะฟะพะปัƒั‡ะฐะตั‚ ะฟั€ะพะผะฟั‚ ะพั‚ ะฟะพะปัŒะทะพะฒะฐั‚ะตะปั, ะฟั€ะพั…ะพะดะธั‚ ะฝะตัะบะพะปัŒะบะพ ัั‚ะฐะฟะพะฒ ะพะฑั€ะฐะฑะพั‚ะบะธ, ะพะฑั€ะฐั‰ะฐะตั‚ัั ะบ Stripe API ะธ ะฒะพะทะฒั€ะฐั‰ะฐะตั‚ ั€ะตะทัƒะปัŒั‚ะฐั‚. Temporal ะณะฐั€ะฐะฝั‚ะธั€ัƒะตั‚, ั‡ั‚ะพ ะดะฐะถะต ะฟั€ะธ ัะฑะพะต ะฒ ัะตั€ะตะดะธะฝะต ะพะฑั€ะฐะฑะพั‚ะบะธ ะทะฐะฟั€ะพัะฐ ะฝะต ะฟั€ะธะดั‘ั‚ัั ะฝะฐั‡ะธะฝะฐั‚ัŒ ะทะฐะฝะพะฒะพ.

ะšะพะผะฟะฐะฝะธะธ, ะธัะฟะพะปัŒะทัƒัŽั‰ะธะต Temporal

Temporal ะฟะพะปะฝะพัั‚ัŒัŽ open source, ะฟะพะดะดะตั€ะถะธะฒะฐะตั‚ัั ั„ะพะฝะดะพะผ Agentric AI Foundation (ั‚ะต ะถะต ะปัŽะดะธ, ั‡ั‚ะพ ั€ะฐะทะฒะธะฒะฐัŽั‚ Linux).

ะ”ะพะฟะพะปะฝะธั‚ะตะปัŒะฝั‹ะต ะฒะพะทะผะพะถะฝะพัั‚ะธ

ะšะพั€ะพั‚ะบะพ: ั‡ั‚ะพ ะดะฐั‘ั‚ Temporal

ะŸั€ะธ ั€ะฐะฑะพั‚ะต ั ะผะธะบั€ะพัะตั€ะฒะธัะฐะผะธ ะพั‚ะบะฐะทั‹ โ€” ะฝะพั€ะผะฐ. ะกะฐะผะฐั ัะปะฐะฑะฐั ั‡ะฐัั‚ัŒ โ€” ัะพะฑัั‚ะฒะตะฝะฝะพ ะฒั‹ะฟะพะปะฝะตะฝะธะต (execution). Temporal ะฟั€ะตะฒั€ะฐั‰ะฐะตั‚ ะตะณะพ ะฒ durable: ะฒั‹ ะฟะธัˆะตั‚ะต ะฑะธะทะฝะตั-ะปะพะณะธะบัƒ ะฒ Activities, ะพะฟะธัั‹ะฒะฐะตั‚ะต ะฟะพัะปะตะดะพะฒะฐั‚ะตะปัŒะฝะพัั‚ัŒ ะฒ Workflow, ะฐ ะฒัั‘ ะฒะพััั‚ะฐะฝะพะฒะปะตะฝะธะต, ะฟะพะฒั‚ะพั€ะฝั‹ะต ะฟะพะฟั‹ั‚ะบะธ ะธ ะฒะตะดะตะฝะธะต ะปะพะณะฐ ะธัั‚ะพั€ะธะธ ะฑะตั€ั‘ั‚ ะฝะฐ ัะตะฑั ะฟะปะฐั‚ั„ะพั€ะผะฐ. ะญั‚ะพ open source, ะปะตะณะบะพ ะฒั‹ะฒะพะดะธั‚ัั ะฒ ะฟั€ะพะดะฐะบัˆะฝ, ะธะผะตะตั‚ ะณะพั‚ะพะฒั‹ะน UI ะธ ะฑะพะปัŒัˆะพะต ะบะพะผัŒัŽะฝะธั‚ะธ.

๐Ÿ“œ Transcript

he ยท 3ย 717 ัะปะพะฒ ยท 73 ัะตะณะผะตะฝั‚ะพะฒ ยท clean

ะŸะพะบะฐะทะฐั‚ัŒ ั‚ะตะบัั‚ ั‚ั€ะฐะฝัะบั€ะธะฟั‚ะฐ
ื‘ื•ืงืจ ื˜ื•ื‘ ืœื›ื•ืœื, ืื ื™ ืจื•ืฆื” ืจื’ืข ืœื”ืชื—ื™ืœ ื‘ืื™ื–ืฉื”ื• ืกื™ืคื•ืจ, ื‘ื•ื ื ื“ืžื™ื™ืŸ ืฉืื ื—ื ื• ืขื›ืฉื™ื• ืื™ื–ื•ืฉื”ื™ ื—ื‘ืจืช e-commerce, ื•ื™ืฉ ืœื ื• ืื™ื–ืฉื”ื• ืžื•ืฆืจ, ืขื›ืฉื™ื• ื”ืฉืขื” ืœื ืชืฉืข ื‘ื‘ื•ืงืจ, ื”ืฉืขื” 2.17 ื“ืงื•ืช, ื‘ื“ื™ื•ืง ื”ืคื™ื™ืคืœื™ื™ืŸ ืฉืœื ื• ืขื‘ืจ, ื”ื“ื™ืคืœื•ื™ืžื ื˜ ืขืœื”, ืขืœ ื”ื ื™ื™ืจ, ื”ื›ืœ ื ืจืื” ืืจื•ืš. ืื ื—ื ื• ืขื•ื‘ืจื•ืช ืœื ื• ืื™ื–ื” ืฉืชื™ ื“ืงื•ืช, ืžืชื—ื™ืœ ืœื ื• ืื™ื–ืฉื”ื• ืชื”ืœื™ืš, ืื‘ืœ ืžืกื™ื‘ื” ื›ืœืฉื”ื™, ืื—ื“ ื”ืคื•ื“ื™ื ืฉืœื ื• ื”ื—ืœื™ื˜ ืฉื”ื•ื ืขื•ืฉื” ืจื™ืกื˜ืืจื˜. ื–ื” ืื•ืžืจ ืฉืื™ืŸ ืœื ื• ืื™ื–ืฉื”ื• ืกื˜ื™ื™ื˜ ืฉื ืฉืžืจ, ื•ืื ื—ื ื• ืœื ื‘ื“ื™ื•ืง ื™ื•ื“ืขื™ื ืžื” ืงืจื” ืœืงื•ื“ ืฉื›ื‘ืจ ืจืฅ ื‘ืงืœืืกื˜ืจ ืฉืœื ื•. ื‘ื“ื™ื•ืง ื‘ื ืงื•ื“ื” ื”ื–ืืช, ืžื” ืฉืงื•ืจื” ื–ื” ืฉืื ื—ื ื• ืฉื•ืžืจื™ื, ืืช ื”ื“ืื˜ื”, ืื‘ืœ ืื ื—ื ื• ืœื ื‘ื”ื›ืจื— ืฆื•ืžืจื™ื ืืช ื”ื‘ื™ืฆื•ืขื™ื ืฉืœ ืžื” ืฉืงืจื” ืœื ื•. ื–ืืช ืื•ืžืจืช, ืื ื—ื ื• ื›ืŸ ื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœื”ื’ื™ื“, ืœื‘ื•ื ื•ืœื”ืกืชื›ืœ ืœืœื•ื’ื™ื, ืœื ืกื•ืช ืœื‘ื•ื ืœืคืขื ื™ื—, ืื‘ืœ ืื™ืŸ ืœื ื• ื”ื™ื•ื ืื™ื–ื•ืฉื”ื™ ื“ืจืš ืงื•ื ืงืจื˜ื™ืช ืœื‘ื•ื ื•ืœื—ื–ื•ืจ ื‘ื“ื™ื•ืง ืœื ืงื•ื“ื” ืฉืžืžื ื” ืขืฆืจื ื•, ืฉื‘ื” ืงืจื” ื”ืงืฉืจ. ืื– ื”ื™ื•ื ืื ื™ ืจื•ืฆื” ืœื“ื‘ืจ ืื™ืชื›ื ืขืœ ืื™ืš ืืคืฉืจ ืœื›ืชื•ื‘ ืคื—ื•ืช ืงื•ื“, ืื™ืš ืœื”ืคื•ืš ืื•ืชื• ืœื”ื™ื•ืช ื”ืจื‘ื” ื™ื•ืชืจ ืขืžื™ื“. ื‘ื”ืจืฆืื” ืฉืœื™, Durable Execution Using Temporal. ืื– ืขืœ ืžื” ืื ื—ื ื• ื ื“ื‘ืจ ื”ื™ื•ื? ืื ื—ื ื• ื ื“ื‘ืจ ืจื’ืข ืขืœ ืขื•ืœื ื”ื‘ืขื™ื”, ื›ืžื• ืฉื›ื‘ืจ ื”ืฆื’ืชื™ ืื•ืชื• ืžืื•ื“ ืžืื•ื“ ื‘ืงื˜ื ื”. ืื ื—ื ื• ื ื“ื‘ืจ ืขืœ ืžื” ื–ื” ื”ืงืกื ื”ื–ื” ืฉืงื•ืจืื™ื ืœื• Temporal, ื™ื”ื™ื” ืœื ื• ืื™ื–ืฉื”ื• ื“ืžื• ืงื˜ืŸ, ื•ื ื“ื‘ืจ ืขืœ ืื™ืš ื–ื” ืจืœื•ื•ื ื˜ื™ ืœื›ื, ื•ืžื” ืืชื ื™ื›ื•ืœื™ื ืœืฆืืช ืžื”ื”ืจืฆืื” ื”ื–ืืช. ืื‘ืœ ืจื’ืข ืœืคื ื™ ื›ืŸ, ืื ื™ ืืฆื™ื’ ืืช ืขืฆืžื™, ืื– ื›ืžื• ืฉืืชื ื›ื‘ืจ ืžื›ื™ืจื™ื, ืื•ืจื™ ื–ืื™ืจื™, ืกื™ื ื•ืจ ืกื•ืคื˜ื•ืจ ืื ื’'ื ื™ืจ ื‘-Drivenets, ื•ืื ื™ ืจื•ืฆื” ืกืคืจ ืœื›ื ื’ื ืงืฆืช ืขืœ ื”ื“ืจืš ืฉืœื™. ืื– ืืช ื”ื“ืจืš ื”ืžืงืฆื•ืขื™ืช ืฉืœื™ ื”ืชื—ืœืชื™ ืื™ ืฉื ื‘-2015, ื›ืฉื”ื™ื™ืชื™ ื‘ืชื™ื›ื•ืŸ, ื”ืชื—ืœืชื™ ื“ืจืš ืชื•ื›ื ื™ืช ืฉื›ื•ืœื ืžื’ืฉื™ืžื™ื, ืžืขื•ืžื“ืช ืขืœ ื™ื“ื™ ืžืฉืจื” ื”ื‘ื™ื˜ื—ื•ืŸ. ื•ื”ืจืขื™ื•ืŸ ืฉื ื—ืฉืคื™ื ืœืชื•ื›ืŸ ืฉื”ื•ื ืืคื™ืœื• ื‘ืจืžื” ืืงื“ืžื™ื™ืช, ืžื’ื™ืœ ืžืื•ื“ ืฆืขื™ืจ. ืฉื ื–ื• ื”ื™ื™ืชื” ื”ื˜ืขื™ืžื” ื”ืจืืฉื•ื ื” ืฉืœื™. ืžืฉื ื”ืชื’ื™ื™ืกืชื™ ืœ-81, ืฉื™ืจืชื™ ืฉื ื’ื ื›ืฉืœื•ืฉ ืฉื ื™ื, ื›ืžืคืชื— ืคื•ืœ ืกื˜ืืง ื•ืื•ื˜ื•ืžืฆื™ื”. ืžื” ืฉื”ื•ื‘ื™ืœ ืื•ืชื™ ืœื”ืชื’ืœื’ืœ ืœืชืขืฉื™ื™ื” ื”ื‘ื™ื˜ื—ื•ื ื™ืช. ืขื‘ื“ืชื™ ื‘ืจืคืืœ ืขืœ ืคืจื•ื™ืงื˜ ืงื˜ืŸ ื•ืžืื•ื“ ืžืื•ื“ ืžืขื ื™ื™ืŸ ืฉื ืžืฆืื™ื ื‘ื—ื“ืฉื•ืช, ืื‘ืœ ื ื“ื‘ืจ ืขืœ ื–ื” ืื—ืจื™ ื”ืจืฆืื”. ืื ืžื™ืฉื”ื• ืžืขื ื™ื™ืŸ ืื•ืชื•, ืฉื‘ืจืคืืœ ื”ืชื—ืœืชื™ ื›ืžืคืชื— ื™ื—ื™ื“ ื‘ืฆื•ื•ืช, ื•ืœืื—ืจ, ืื—ืจื™ ืฉื ื” ื•ื—ืฆื™, ื”ืคื›ืชื™ ืœื”ื™ื•ืช ืจืืฉ ืฆื•ื•ืช, ื•ืื™ืคืฉื”ื• ื‘ื“ืจืš, ืจืื™ืชื™ ืืช, ืงืคืฅ ืœื™ ืื™ื–ืฉื”ื• ืคืจืกื•ื ื‘ืœื™ื ืงื“ื™ืŸ, ืขืœ ื˜ืงื’'ื™ื, ืืžืจืชื™, ื˜ื•ื‘, ื™ืืœืœื”, ื‘ื•ื ื ื™ืชืŸ ืœื–ื” ืฆ'ืื ืก, ื•ื”ื™ื•ื, ื›ื‘ืจ ื‘ืฉื ื” ื”ืื—ืจื•ื ื”, ืžืคืชื— ืชื•ื›ื ื” ื‘ื“ืจื™ื™ื‘ื ื˜ืก. ืื–, ื–ื• ื”ื“ืจืš ืฉืœื™, ื•ื‘ื–ื›ื•ืชื” ืื ื™ ืคื” ื•ืืชื ืคื”, ืื– ืฉื•ื‘, ืžืžืฉ ืžื‘ืกื•ื˜, ืžืžืฉ ืฉืžื—, ื•ื™ืืœืœื”, ื‘ื•ืื• ื ืงืคื•ืฅ. ืื– Distributed System in a RARD, ื‘ื˜ื— ืฉืื ื—ื ื• ืžื“ื‘ืจื™ื ืขืœ ืžื™ืงืจื• ืกืจื•ื•ื™ืกื™ื, ืฉื‘ืื•ืคืŸ ื›ืœืœื™, ื‘ืจื’ืข ืฉื™ืฉ ืœื ื• ื™ื•ืชืจ ืžืื™ื–ืฉื”ื• ืกืจื•ื•ื™ืก ืื—ื“, ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืœื ื• ื”ืจื‘ื” ืžืื•ื“ ื ืงื•ื“ื•ืช ืฉืœ ืงืฉืœ, ื‘ื˜ื— ืฉืื ื—ื ื• ืจืฆื™ื ืขืœ ื”ืจืฉืช. ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืœื ื• ื˜ื™ื™ืžืื•ื˜ื™ื ืื• ื›ืœ ืžื™ื ื™ ืžืงื•ืžื•ืช ืฉืœ ืจื™ื˜ืจืื™ื ื‘ื›ืœ ืžืงื•ื, ืชื”ืœื™ื›ื™ื ืžืื•ื“ ืžืื•ื“ ืืจื•ื›ื™ื, ืžื‘ืœื™ ื”ืคืกืงื•ืช, ื™ืฉ ืœื ื• ืชืžื™ื“ ืืช ื”ืงื˜ืข ื”ื–ื” ืฉืœ It works on my machine, ืื‘ืœ ื–ื” ืžืžืฉ ืœื ืžืฉื ื” ื‘ืคืจื•ื“ืงืฉืŸ, ืฉื•ืจื” ืชื—ืชื•ื ื”, ื›ื™ืฉืœื•ื ื•ืช, ืงืจืฉื™ื, ื“ื™ืคืœื•ื™ืžื ื˜, ื›ืœ ื”ื“ื‘ืจื™ื ื”ืืœื” ื ื•ืจืžืœื™ื™ื ืœื—ืœื•ื˜ื™ืŸ. ืขื›ืฉื™ื•, ื‘ื•ืื• ื ื™ืงื— ื“ื•ื’ืžื”, ื‘ื•ืื• ื ื“ื‘ืจ ืืช ื”ืฉืœื•ืžื™ื. ื•ืื ื™ ืžื ื™ื— ืฉืœื›ื•ืœื ื• ื™ืฆื ื‘ืฆื•ืจื” ื›ื–ื• ืื• ืื—ืจืช ืœื‘ื•ื ื•ืœื”ืขื‘ื™ืจ ืื™ื–ืฉื”ื• ืชืฉืœื•ื ื‘ืื™ื ื˜ืจื ื˜. ืื ื™ ื™ื•ืฆื ืžื ืงื•ื“ืช ื”ื ื—ื” ืฉื™ืฉ ืœื ื• ืื™ื–ืฉื”ื• ืคืจื•ื ื˜-ืื ื“ ืฉืžื“ื‘ืจ ืขื ื”ื‘ืงื“ ืฉืœื ื•. ืื ื—ื ื• ืขื›ืฉื™ื• ื”ื•ืœื›ื™ื ืœื‘ื•ื ื•ืœื”ืขื‘ื™ืจ ืื™ื–ืฉื”ื• ืชืฉืœื•ื, ื•ืจื•ืฆื™ื ืœืฉืžื•ืจ ืื•ืชื• ืœื“ื˜ืื‘ื™ื™ืก, ื•ืื– ื‘ืกื•ืฃ ืœื‘ื•ื ื•ืœืฉืœื•ื— ืื™ื–ืฉื”ื• ืื™ืžื™ื™ืœ ืขืœ ื”ืงื‘ืœื” ืœืœืงื•ื— ืฉืœื ื•. ืื– ืื—ืจื™ ืฉื“ื™ื‘ืจื ื•... ืขืœ ื”ืืจื›ื™ื˜ืงื˜ื•ืจื”, ืื ื”ื™ื™ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœืขืฉื•ืช ืืช ื–ื” ื‘ืงื•ื“, ืžื•ืœ ื”ื‘ืงืŸ ืฉืœื ื•, ื–ื” ื”ื ืจืื” ืคืœื•ืก ืžื™ื ื•ืก ื›ื›ื”, ื ื›ื•ืŸ? ื™ืฉ ืœื ื• ืื™ื–ืฉื”ื• ืื•ืจื“ืจ ืื™-ื“ื™, ื”ื”ื–ืžื ื” ืฉื‘ืขืฆื ื”ื™ื•ื–ืจ, ืขื ืื•ืชื• ื™ื•ื–ืจ ืื™-ื“ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœืžื‘ืฆืข, ื•ื›ืžื” ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืขื‘ื•ืจ ื•ืœื—ื™ื™ื‘ ืื•ืชื•. ื™ืฉ ืœื ื• ืืช ืื•ืชื• ืคื™ื™ืžื ื˜ ืคืจื•ื•ื™ื™ื“ืจ, ืฉื™ื›ื•ืœ ืœื”ื™ื•ืช ืžืฉื”ื• ืคื ื™ืžื™ ืื• ื—ื™ืฆื•ื ื™, ืื ื—ื ื• ื‘ื•ื—ืจื™ื ืืช ืื•ืชื• ื™ื•ื–ืจ ื›ืžื” ืื ื—ื ื• ืจื•ืฆื™ื ืœื—ื™ื™ื‘, ืจื•ืฆื™ื ืœืฉืžื•ืจ ืืช ื”ื˜ืจื ื–ืงืฆื™ื” ื”ื–ืืชื™, ื•ื‘ืกื•ืฃ ืœื‘ื•ื ื•ืœื”ืคื™ืฅ ืื™ื–ื•ืฉื”ื™ ืงื‘ืœื”. ื”ืœืื”, ื ื”ื™ื”? ื ืจืื” ืคืฉื•ื˜, ืื—ืœื”. ืื‘ืœ ืžื” ืงื•ืจื” ืื ืื ื—ื ื• ื ื›ืฉืœื™ื ื‘ื“ืจืš? ืื– ืื ืื ื—ื ื• ื ื›ืฉืœื™ื, ื‘ื•ืื• ื ื ืกื” ืฉื•ื‘. ืื– ื ื‘ื•ื ื•ื ื™ืฆื•ืจ ืคื” ืื™ื–ืฉื”ื• ืคืชืจื•ืŸ ื ืื™ื‘ื™, ืฉืื ื—ื ื• ื ื›ื ืกื™ื ืœืื™ื–ื•ืฉื”ื™ ืœื•ืœืช ืคื•ืจ. ื•ื ืขื˜ื•ืฃ ืื•ืชื” ื‘ืื™ื–ืฉื”ื• try and accept, ื‘ืžื™ื“ื” ื•ื™ืฉ ืœื™ ืื™ื–ื•ืฉื”ื™ ืฉื’ื™ืื”, ืื ื™ ืชื•ืคืก ืื•ืชื” ื•ืื ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœื ืกื•ืช ืขื•ื“ ืคืขื. ืื‘ืœ ืืชื ื‘ื˜ื— ืฉื•ืืœื™ื ืืช ืขืฆืžื›ื, ืžื” ืงื•ืจื” ืื ื›ื‘ืจ ื—ื™ื™ื‘ื ื• ืืช ื”ืœืงื•ื—? ืื• ื”-DB ืงืจืก ืžืื™ื–ื•ืฉื”ื™ ืกื™ื‘ื” ืžืกื•ื™ืžืช. ืื– ืคื” ืื ื—ื ื• ื’ื ืจื•ืฆื™ื ืœื”ืฉืื™ืจ ืื™ื–ืฉื”ื• ืžื ื”ื ื•ืŸ ืฉืœ ID Impotency, ื–ืืช ืื•ืžืจืช ืื ื—ื ื• ืœื ืจื•ืฆื™ื ืฉืื ื›ื‘ืจ ื—ื™ื™ื‘ื ื• ืืช ืื—ื“ ื”ืœืงื•ื—ื•ืช ืฉืœื ื•, ืื ื—ื ื• ื—ื™ื™ื‘ ืื•ืชื• ืขื•ื“ ืคืขื ื•ืขื•ื“ ืคืขื, ื–ื” ืœื ื”ืชื ื”ื’ื•ืช ืฉื”ื™ื ืชืงื™ื ื”, ื‘ื˜ื— ืฉืื ื—ื ื• ืžื“ื‘ืจื™ื ื‘ืžืขืจื›ืช ืฉื”ื™ื ื‘ืกืงื™ื™ืœ, ืื– ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื”ื•ืกื™ืฃ ืœื“ื•ื’ืžื” ืฉืœื ื•, ืื™ื–ื•ืฉื”ื™ ื‘ื“ื™ืงื”, ืœืคื ื™ ืฉืื ื—ื ื• ื ื›ื ืกื™ื ืœื‘ื•ื ื•ืœื ืกื•ืช, ื‘ืžื™ื“ื” ื•ื›ื‘ืจ ืฉื™ืœืžืชื™, ืื– ืืœ ืชืจืฆื™ ืœื™ ื›ืœื•ื. ื•ืฉื•ื‘, ืœื ืคืชืจื•ืŸ ืฉื”ื•ื ืื™ื“ื™ืืœื™, ื‘ื˜ื— ื›ื™ ืื ื—ื ื• ื’ื ืฆืจื™ื›ื™ื ืขื›ืฉื™ื• ืœื‘ื•ื ื•ืœืคืฆืœ ืืช ื›ืœ ืžื” ืฉืงืฉื•ืจ ืœืื™ืžื™ื™ืœ, ืื• ืœืชืฉืœื•ื. ื™ืฉ ืœื™ ืคื” ืื™ื–ืฉื”ื• ืกื˜ื™ื™ืฅ' ืฉืื ื™ ืฆืจื™ืš ื›ืœ ื”ื–ืžืŸ ืœืขืงื•ื‘ ืื—ืจื™ื•, ื•ืœื ืกื•ืช ืœืจืื•ืช ืžื” ื‘ื›ืœืœ ืงื•ืจื” ืคื”. ืื– ืื ืฉื™ืœืžืชื™ ื›ื‘ืจ, ืื– ืืœ ืชืขืฉื” ื›ืœื•ื, ืื‘ืœ ืื ืœื ืฉื™ืœืžืชื™, ืื– ื›ืŸ ืชื ืกื” ืœื—ื™ื™ืจ ืืช ื”ืœืงื•ื—, ื›ืŸ ืชืฉืžื•ืจ ืœื™ ืืช ื”ื˜ืจื ื–ืงืฆื™ื” ืœื“ืื˜ืื‘ื™ื™ืก, ืœื ืื•ืคื˜ื™ืžืœื™. ืื– ืžื” ื‘ืชื›ืœืก ื‘ื ื™ื ื• ืคื”? ื‘ื ื™ื ื• ืื™ื–ืฉื”ื• ืžื ื’ื ื•ืŸ ืฉืœ ืจื™ื˜ืจื™ื™ื–, ืื™ื–ืฉื”ื• State Tracking, ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ื›ืœ ื”ื–ืžืŸ ืœื‘ื•ื ื•ืœื ืกื•ืช ืœืฉืžื•ืจ ืžื” ืงื•ืจื”, ื™ืฆืจื ื• ืื™ื–ืฉื”ื• Recovery Job, State Machine, ืžื™ืŸ ื”ืกืชื ื›ื‘ืจ ื”ืกื›ืจืชื™, ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœืขืงื•ื‘ ืื—ืจื™ ืžื” ืฉืงื•ืจื”, ื™ื›ื•ืœ ืœื”ื™ื•ืช ืœื ื• ืื™ื–ืฉื”ื• ืžื ื’ื ื•ืŸ ืฉืœ Compensation, ืฉืื ื ื›ืฉืœืชื™ ื‘ื“ืจืš, ืื– ืื ื™ ืฆืจื™ืš ืœื‘ื•ื ื•ืœื ืกื•ืช ืœืชืงืŸ ืืช ื–ื”, ื‘ืชื›ืœืก, ืžื” ืฉืจืฆื™ื ื• ืœืขืฉื•ืช, ื–ื” ืœื‘ื•ื ื•ืœื—ื™ื™ื‘ ื›ืจื˜ื™ืก, ืกื™ื™ืžื ื• ืคื”, ืขื ื›ืœ ื”ื“ื•ื’ืžืช ืงื•ื“ ื”ื–ืืช, ืขื ืžืขืจื›ืช Workflowื™ื ืฉืœืžื”. ื•ืœื›ืŸ, ืื ื™ ืจื•ืฆื” ืœื“ื‘ืจ ืื™ืชื›ื ืขืœ temporal. temporal ื–ื” ื›ืœื™ ืฉื”ื•ื Open Source, ื•ื™ืฉ ืœื• ื”ืจื‘ื” ืžืื•ื“ ื™ืชืจื•ื ื•ืช. ื”ื•ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ืžื ื•ืขืœ self-hosted ื‘ืงืœืืกื˜ืจ ืฉืœื›ื, ืื• ื‘ื“ื•ืงืจ ืงื•ืžืคื•ื–, ื”ื•ื ื™ื›ื•ืœ ืœื”ื™ื•ืช ื’ื ื›ืŸ managed. ื–ืืช ืื•ืžืจืช, ื‘ืงืœืื•ื“, ืื ืืชื ื‘ื•ื—ืจื™ื ืœื”ืจื•ื‘ ื•ืœืฉืœื ืœื˜ืžืคื•ืจืœ, ืื‘ืœ ืชื›ืฃ, ืื• ื‘ื”ืžืฉืš ื ื“ื‘ืจ ืขืœ ื–ื”. ืื– ืื™ืš ื”ืงืกื ื”ื–ื” ื‘ื›ืœืœ ืงื•ืจื”? ืื ื—ื ื• ื ื“ื‘ืจ ืคื” ืขืœ ืฉืœื•ืฉื” ื ื•ืฉืื™ื, ืื ื—ื ื• ื ืชื—ื™ืœ ืžืœื”ืคื™ื™ืŸ ื‘ื›ืœืœ ืžื” ื–ื” Workflow and Reactivities, ื ื“ื‘ืจ ืขืœ ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ืฉืœ ื˜ืžืคื•ืจืœ, ื•ื‘ืกื•ืฃ ืื™ืš ื›ืœ ื”ืฉื™ืœื•ื‘ ื‘ื™ื ื™ื”ื ื ื•ืชืŸ ืœื ื• ืืช ื”-Durable Execution. ืื–, ื•ื•ืจืงืคืœื•ื•ื–, ื•ื•ืจืงืคืœื•ื•ื– everywhere, ื‘ืืžืช ื›ื›ื”, ื›ืฉืื ื—ื ื• ื‘ืื™ื ื•ืขื•ื‘ื“ื™ื ื‘ืชืฉืชื™ืช ื”ื–ืืช, ืื ื—ื ื• ื‘ืื™ื ื‘ืžื™ื™ื ื“ืกื˜ ืฉืœ ื•ื•ืจืงืคืœื•ื™ื, ื•ืžื” ื–ื” ืื•ืžืจ ื‘ื›ืœืœ? ื›ืžื• ืฉืืชื ื™ื›ื•ืœื™ื ืœืจื•ื‘ ื•ืœื”ื›ื™ืจ ืžืชื”ืœื™ื›ื™ื ื›ืืœื” ื•ืื—ืจื™ื, ื™ืฉ ืœื ื• ื•ื•ืจืงืคืœื•ื™ื ื›ื—ืœืง ืž-Gitab Actions, ื™ื›ื•ืœ ืœื”ื™ื•ืช ืื™ื–ืฉื”ื• ืชื”ืœื™ืš ืžืื•ื“ ืžืื•ื“ ืกื“ื•ืจ ืฉื™ืฉ ืœื ื• ื‘ืคืœื˜ืคื•ืจืžื” ืฉืœื ื•, ืžื‘ื—ื™ื ืช ื˜ืžืคื•ืจืœ, ื›ืœ ื“ื‘ืจ ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœื”ื™ื•ืช ื•ื•ืจื’ืคืœื•, ื•ืื™ืš ื–ื” ื ืจืื”, ื™ืฉ ืœื ื• ื‘ืขืฆื ืื™ื–ื•ืฉื”ื™ ื ืงื•ื“ืช ื”ืชื—ืœื”, ื•ื™ืฉ ืœื ื• ื ืงื•ื“ืช ืกื™ื•ื, ื•ื™ืฉ ืœื ื• ืืช ื”ื‘ืœื•ืงื™ื, ืฉื›ืœ ื‘ืœื•ืง ื‘ืขืฆื ืžืขื‘ื™ืจ ื”ืœืื” ืืช ื”ืฉืœื‘ ื”ืงื•ื“ื. ืื– ืื ืขื›ืฉื™ื• ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื“ื‘ืจ ืขืœ ืื™ื–ืฉื”ื• ื•ื•ืจื’ืคืœื• ืœื“ื•ื’ืžื”, ื ื’ื™ื“ ื•ื™ืฉ ืœื™ ืคื” ืืช ื”... ืชื”ืœื™ื›ื•ืŸ ื”ื–ื” ืฉืื ื—ื ื• ืจื•ืื™ื ืคื” ืขืœ ื”ืžืกืš, ื™ืฉ ืœื™ ืคื” ืฉืœื•ืฉื” activities, ืฉื”ืจืขื™ื•ืŸ ืฉืœ ื›ืœ ืคื•ื ืงืฆื™ื” ืคื” ื–ื” ืฉื‘ืขืฆื ื”ื™ื ืžื—ื–ื™ืจื” ืื™ื–ืฉื”ื• ืขืจืš ืกื•ืคื™. ืื– ื™ืฉ ืœื ื• ืคื” ืืช FOO ืฉืชื—ื–ื™ืจ ืœื ื• ืืช A, ื™ืฉ ืœื ื• ืืช BAR ืฉืชื—ื–ื™ืจ ืœื ื• ืืช B, ื•ื™ืฉ ืœื ื• ืืช BOO ืฉืชื—ื–ื™ืจ ืœื ื• ืืช C. ื›ืฉืื ื—ื ื• ื‘ืื™ื ื•ืขื•ื‘ื“ื™ื ืขื ื›ืœ activity, ื›ืžื• ืฉื“ื™ื‘ืจื ื• ืžืงื•ื“ื, ื›ืœ activity ืฆืจื™ืš ืœื‘ื•ื ื•ืœื”ื™ื•ืช ื‘ืกื•ืฃ ID important. ืื ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื”ื“ื’ื™ื ืืช ื–ื”, ืชื—ืฉื‘ื• ืจื’ืข ืขืœ ื”ืžื—ืฉื‘ ืฉืœื ื•. ื ื›ื•ืŸ? ื‘ื›ืœ ืžื—ืฉื‘ ืืจื ื™ืฉ ืื™ื–ืฉื”ื• ื›ืคืชื•ืจ ื›ื™ื‘ื•ื™, ื›ืฉืื ื—ื ื• ืœื•ื—ืฆื™ื ืขืœื™ื•, ื”ื•ื ืžื‘ืฆืข ืื™ื–ื•ืฉื”ื™ ืคืขื•ืœื” ื‘ื”ืชืื ืœืกื˜ื™ื™ื˜ ื”ื ื•ื›ื—ื™ ืฉืœ ื”ืžื—ืฉื‘. ืื ื”ื•ื ื“ืœื•ืง, ืื– ื”ื•ื ืžื›ื‘ื” ืื•ืชื•, ื•ืื ื”ื•ื ื›ื‘ื•ื™, ืื– ื”ืžื—ืฉื‘ ืฉืœื ื• ื ื“ืœืง. ืื ื”ื™ื™ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื”ืคืœื™ืœ ืืช ื–ื” ื“ืจืš ื˜ืžืคื•ืจืœ, ื”ื™ื™ื ื• ืฆืจื™ื›ื™ื ืฉื™ื”ื™ื” ืœื ื• ื›ืคืชื•ืจ ื‘ืžืจื›ืื•ืช ืขื‘ื•ืจ ื›ืœ ืคืขื•ืœื” ื›ื–ืืช. ื–ืืช ืื•ืžืจืช, ื”ื™ื™ื ื• ืฆืจื™ื›ื™ื ืื™ื–ืฉื”ื• activity ืœื›ื™ื‘ื•ื™, ื•ื”ืื ืฆืจื™ื›ื™ื activity ืœื”ื“ืœืงื”. ืื– ืื ื™ ื—ื•ื–ืจ ืจื’ืข ืœ-workflow ืฉืœื ื•, ื”ื”ืชื—ืœืชื™ ืฉืœ ื”ืชืฉืœื•ื. ืชืฉื™ืžื• ืœื‘ ืฉื”ื™ื•ื ื‘ืฆื•ืจื” ืคื™ื™ื˜ื•ื ื™ืช, ืื ื™ ืžื™ื™ืฆืจ ืคื” ืื™ื–ืฉื”ื• class, ืื ื™ ืื•ืžืจ, ื–ื” ื”-workflow definition, ื›ืฉืื ื™ ืขื›ืฉื™ื• ื”ื•ืœืš ืœื‘ื•ื ื•ืœื”ืจื™ืฅ ืืช ื”-workflow ืฉืœื™, ืืœื” ื”ืคืจืžื˜ืจื™ื ืฉืื ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœืงื‘ืœ, ื•ืžื” ืฉืื ื™ ืขื•ืฉื” ื‘ืชื›ืœืก, ืื ื™ ืขื•ืฉื” Workflow Execute, ืœ-Activity, ื–ืืช ืื•ืžืจืช ืฉื›ืœ ื”ื‘ื™ื–ื ืก ืœื•ื’'ื™ืง ืฉืœื™, ื›ืœ activity ืžื•ื’ื“ืจ, ื›ืœ ื”ื‘ื™ื–ื ืก ืœื•ื’'ื™ืง ืฉืœื™ ืกืœื™ื—ื”, ืžื•ื’ื“ืจ ื‘ืชื•ืš ืื•ืชื” activity. ืื– ื™ืฉ ืœื ื•, ื›ืžื• ืฉืืžืจืชื™, ืืช ื”ืžืกื’ืจืช ืฉื–ื” Workflow, ื•ื™ืฉ ืœื ื• activity ืฉื–ื” ื‘ืืžืช ืžื” ืงื•ืจื” ื‘ืชื›ืœืก, ืžื™ ื”ื•ืœืš ืœื‘ืฆืข ืืช ื”ืžืฉื™ืžื” ื”ื–ื•. ืื– ืชืฉื™ืžื• ืœื‘ ืฉืื ืขื›ืฉื™ื• ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืขื‘ื•ืจ ืœื—ื–ื•ืจ ืœื“ื•ื’ืžื” ื”ืชื—ืœืชื™ืช, ืฉื“ื™ื‘ืจื ื• ืขืœ ืชืฉืœื•ืžื™ื, ืคืชืื•ื ื–ื” ื ืจืื” ื”ืจื‘ื” ื”ืจื‘ื” ื™ื•ืชืจ ื“ื•ืžื”, ืžื” ืฉื”ื•ืกืคื ื• ืกืš ื”ื›ืœ ื–ื” ืขื•ื“ ื›ืžื” ืฉื•ืจื•ืช ืฉืœ ื“ืงื•ืจื˜ื•ืจื™ื, ืฉื‘ืขืฆื ืžื’ื“ื™ืจื™ื ืœื ื• ืฉืื ื—ื ื• ื”ื•ืœื›ื™ื ืœื”ืฉืชืžืฉ ื‘ื˜ืžืคื•ืจื, ืื‘ืœ ื‘ืชื—ืชืกืŸ ืื ื—ื ื• ื›ื•ืชื‘ื™ื ืคื” ื‘ืืžืช ื”ืจื‘ื” ืคื—ื•ืช ืงื•ื“, ื•ื”ื•ื ื’ื ื”ืจื‘ื” ื™ื•ืชืจ ืงืจื™, ืคืœื•ืก ื›ืœ ื”ืงืกื ืฉืื ื—ื ื• ืชื›ืฃ ื”ื•ืœื›ื™ื ืœื“ื‘ืจ ืขืœื™ื•. ืื– ืžื” ื™ื›ื•ืœ ืœื”ื™ื•ืช? Workflow, ื›ืœ ื“ื‘ืจ, ืฉื•ืจื” ื”ืชื—ืชื•ื ื”, ื›ืœ ื“ื‘ืจ, ืื ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื”ื‘ื•ื ื•ืœื“ื‘ืจ ืขืœ ื“ื•ื’ืžืื•ืช, ื™ื›ื•ืœื™ื ืœื”ื™ื•ืช ืœื ื• ืชืฉืœื•ืžื™ื, ืื™ื–ืฉื”ื• subscription renewal, ืขื›ืฉื™ื• ืžืื•ื“ ืžืื•ื“ ื—ื–ืง ื”ืจื‘ื” ืžืื•ื“ ืคื™ื™ืคืœื™ื™ื ื™ื ืฉืงืฉื•ืจื™ื ืœ-AI, ื™ืฉ ื’ื ืคื™ื™ืคืœื™ื™ื ื™ื ืฉืœืžื™ื ืฉืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื”ื•ืกื™ืฃ ืื™ื–ืฉื”ื• human approval, ื›ื—ืœืง ืžื”ืœื•ืค, ืื– ืื ื™ ืจื•ืฆื” ืœืขื‘ื•ืจ ืจื’ืข ืœ... ืœืื—ื™ื˜ืงื˜ื•ืจื”, ืื™ืš ื‘ืขืฆื ื›ืœ ื”ื“ื‘ืจ ื”ื–ื” ืงื•ืจื”, ืื– ืžื” ืฉืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืจืื•ืช ืคื” ืขืœ ื”ืžืกืš, ื–ื” ืื™ื–ืฉื”ื• ืกืงืจื™ื ืฉื•ื˜, ืžื”ืื—ื™ื˜ืงื˜ื•ืจื” ื”ืจืฉืžื™ืช ืฉืœ ื˜ืžืคื•ืจืœ, ื™ืฉ ืคื” ื›ืœ ืžื™ื ื™ ืืœืžื ื˜ื™ื, ืœืื™ืš ื”ืงืกื ื”ื–ื” ืงื•ืจื”, ืžื” ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื“ืขืช, ืฉืœื ื• ื™ืฉ ืื™ื–ื• ืืคืœื™ืงืฆื™ื”, ืฉืžืฉืชืžืฉืช ื‘ื˜ืžืคื•ืจืœ SDK, ืœื ืžืฉื ื” ื‘ืื™ื–ื” ืฉืคื”, ื•ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื›ืชื•ื‘ ื‘ืกื•ืฃ, ืืช ืื•ืชื• ื˜ืžืคื•ืจืœ ื•ื•ืจืงืจ. ืžื” ืงื•ืจื” ืคื” ื‘ืชื•ืš ื˜ืžืคื•ืจืœ ืงืœืืกื˜ืจ, ื‘ืจื’ืข ืฉืื ื—ื ื• ืžืจื™ืžื™ื ืคื” ืืช ื”ืฉืจืช, ืžืžืฉ ืขื•ื“ ืจื’ืข ื ื™ื’ืข ืœื–ื”, ืื‘ืœ ื‘ืฉื‘ื™ืœ ืœื‘ื•ื ื•ืœืขืฉื•ืช ืœื ื• ืงืฆืช ืกื“ืจ ื‘ืขื™ื ื™ื™ื, ื‘ื•ื ื ื™ืงื— ืื™ื–ื•ืฉื”ื™ ืื‘ืกื˜ืจืงืฆื™ื”, ื ืชื™ื™ื—ืก ืœื–ื” ื‘ืฆื•ืจื” ืฉืœ ื‘ืœื•ืงื™ื, ื•ื ืชื—ื™ืœ ืžื”-front-end service. ื›ืฉืžื• ื›ืŸ ื”ื•ื, front-end, ื›ืžื• ืฉืื ื—ื ื• ืžื›ื™ืจื™ื ื‘ืืคืœื™ืงืฆื™ื•ืช front-end, ื”ื•ื ื‘ืขืฆื ื”ื’ืฉืจ ืฉืœื ื• ืœื‘ื•ื ื•ืœืชืงืฉืจ, ืขื ื›ืœ ืžื” ืฉืงืฉื•ืจ ืœื˜ืžืคื•ืจืœ ืงืœืืกื˜ืจ, ืขื ื”ืกืจื•ื•ื™ืกื™ื ื”ืคื ื™ืžื™ื™ื ืฉืœื ื•. ื–ืืช ืื•ืžืจืช ืฉื™ืฉ ืœื ื• ืืช ื”ืืคืœื™ืงืฆื™ื” ื”ื‘ืงื ื“ื™ืช ืฉืœื ื•, ืฉืžืฉืชืžืฉืช, ื™ื•ื“ืขืช ืœื‘ื•ื ื•ืœืขืฉื•ืช ืื™ื ื‘ื•ืง ืœื˜ืžืคื•ืจืœ, ื”ืคืจื•ื ื˜ื ื˜ ืกืจื•ื•ื™ืก ืฉืœื ื• ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื”ื™ื•ืช ื”ื’ืฉืจ ื‘ื™ืŸ ื”ื‘ืงืฉื•ืช, ื•ื‘ื ื•ืกืฃ ืœื–ื” ื”ื•ื ื’ื ืžืจืื” ืœื ื• ืื™ื–ืฉื”ื• UI ืžืื•ื“ ืžืื•ื“ ื—ืžื•ื“, ืฉืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืขืงื•ื‘ ืื—ืจื™ ื›ืœ ื”ืชื”ืœื™ื›ื™ื ืฉืœื ื•, ืžืงืฆื” ืœืงืฆื”. ื”ื•ื•ืจืงืœ ืกืจื•ื•ื™ืก ืฉืœื ื•, ืื– ืื ื‘ื“ื™ืื’ืจืžื” ืจืื™ื ื• ื‘ืžืœื‘ืŸ ื”ืฆื”ื•ื‘, ื›ืžื• ืฉืืžืจืชื™ ืžืงื•ื“ื, ื”-Worker Service ื”ื•ื ืงื˜ืข ืงื•ื“ ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœืžืžืฉ ืื•ืชื•. ื”-Worker ื”ื•ื ื‘ืขืฆื, ื”-Worker ืงืฆืช ื˜ื™ืคืฉ, ื”ื•ื ื”ื•ืœืš ื•ืžืจื™ืฅ ืืช ื”-Business Logic ืฉืœื ื•, ื”ื•ื ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื”ืจื™ืฅ ื’ื Workflowื™ื ื•ื’ื Activities, ื•ื‘ืขืฆื ื™ืฉ ืื™ื–ืฉื”ื• ืชื•ืจ ืคื ื™ืžื™. ื‘ืกืจื•ื•ื™ืก ืฉืื ื—ื ื• ืชื›ืฃ ื ื“ื‘ืจ ืขืœื™ื•, ืฉื”ื•ื•ืจืงืจ ื™ื•ื“ืข ื›ืœ ื”ื–ืžืŸ ืœื‘ื•ื ื•ืœืžืฉื•ืš ืžืฉื™ืžื•ืช, ืื ื—ื ื• ืื•ืžืจื™ื ืœื•, ื–ื” ื”ื˜ืกืงื™ื• ืฉืืชื” ื”ื•ืœืš ืœื”ืกืชื›ืœ ืขืœื™ื•, ื‘ืžื™ื“ื” ื•ื ื›ื ืก ืœืฉื, ื ื›ื ืกื” ืœืฉื ืื™ื–ื•ืฉื”ื™ ืžืฉื™ืžื”, ืคืฉื•ื˜ ืชืžืฉื•ืš ื•ืชื‘ืฆืข, ืื‘ืœ ื”ื•ื ืœื ื‘ืืžืช ื™ื•ื“ืข ืžื” ื”ื•ื ื”ื•ืœืš ืœื‘ืฆืข, ื•ืฉื•ื‘, ืื ื—ื ื• ื ืจืื” ืืช ื–ื” ื‘ื”ืžืฉืš ื‘ื“ืžื•, ืื™ืš ืื ื—ื ื• ืžื’ื“ื™ืจื™ื ืืช ื–ื” ื•ืžื” ืื ื—ื ื• ืขื•ืฉื™ื ืฉื ื‘ื“ื™ื•ืง, ืื‘ืœ ืžื‘ื—ื™ื ืช ื”ืืจื›ื™ื˜ืงื˜ื•ืจื”, ืื– ืชื—ืฉื‘ื• ืฉืื ื—ื ื• ืงื™ื‘ืœื ื• ืื™ื–ื•ืฉื”ื™ ืคืงื•ื“ื” ื‘ืงืœืืกื˜ืจ, ื™ืฉ ืœื ื• ืื™ื–ื•ืฉื”ื™ ืžืฉื™ืžื” ืฉื ื›ื ืกื” ืœืชื•ืจ, ื”-worker ืฉืœื ื• ื™ื•ื“ืข ืœื‘ื•ื ื•ืœืฉืœื•ืฃ ืืช ืื•ืชื” ืžืฉื™ืžื”, ื•ื‘ืชื›ืœืก-ืชื›ืœืก ืžื” ืฉืงื•ืจื”, ื”-workflow ืฉืœื ื• ืื• ื”-activity ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื”ืชื—ื™ืœ ืขืจื•ืฅ. ืื ื™ ืขื•ื‘ืจ ืœืกืจื•ื•ื™ืก ื ื•ืกืฃ, ื™ืฉ ืœื ื• ืืช ื”-history service, ื›ืฉืžื• ื›ืŸ ื”ื•ื ื™ื•ื“ืข ืœื‘ื•ื ื•ื‘ืขืฆื ืœืชืขื“. ื›ืœ ื ืงื•ื“ื” ื•ื ืงื•ื“ื” ื‘ืชื”ืœื™ืš. ืื– ื™ืฉ ืœื ื• Workflow ืฉื”ืชื—ื™ืœ, ืื ื—ื ื• ื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœืกืžืŸ ืฉื›ืจื’ืข ืื™ื–ืฉื”ื• activity ื”ืชื—ื™ืœ, ืฉืœ Charge Payment, ืกื™ื™ืžื ื• ืืช ื”ืืงื˜ื™ื‘ื™ื˜ื™ ื”ื–ื”, ืื ื—ื ื• ื ืจืื” ืฉืื ื—ื ื• ื‘ืขืฆื ืžืชื—ื™ืœื™ื ืื™ื–ืฉื”ื• activity ื—ื“ืฉ, ืกื™ื™ืžื ื• ืœืฉืžื•ืจ ืœื“ืื˜ืื‘ื™ื™ืก, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืฆื™ื™ืŸ ืฉืกื™ื™ืžื ื• ืืช ื”ืชื”ืœื™ืš ืฉืœื ื•, ื•ืื™ืš ื›ืœ ื–ื” ืงื•ืจื”? ืื– ื”ื’ืขื ื• ื‘ืขืฆื ืœืžืืฆ'ื™ื ื’ ืกืจื•ื•ื™ืก, ื”ืžืืฆ'ื™ื ื’ ืกืจื•ื•ื™ืก ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื ื”ืœ ืœื ื• ืืช ื›ืœ ื”ืชื•ืจื™ื ื”ืคื ื™ืžื™ื™ื, ื–ืืช ืื•ืžืจืช, ืื ืื ื—ื ื• ืขื›ืฉื™ื• ืฆืจื™ื›ื™ื ืœื‘ื•ื ื•ืœื“ื‘ืจ ืขืœ ืื™ื–ืฉื”ื• ืœื•ืค, ืื– ืืžืจื ื• ืฉื”ื”ื™ืกื˜ื•ืจื™ื”, ืฉื”ืกืจื•ื•ื™ืก ื”ื™ืกื˜ื•ืจื™ื” ื™ื•ื“ืข ืœื‘ื•ื ื•ืœืชืขื“ ืœื ื• ื‘ื›ืœ ืฉืœื‘ ื•ืฉืœื‘ ืืช ื”ืชื”ืœื™ืš, ื”ื”ื™ืกื˜ื•ืจื™ ื‘ืขืฆื ืžืงืคื™ืฅ ื”ื•ื“ืขื” ืœืžืืฆ'ื™ื ื’, ืื•ืงื™ื™, ืชื”ื™ื” ื“ืชื™, ืืชื” ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœื”ืชื—ื™ืœ ืœืขื‘ื•ื“, ื ื›ื ืกื” ืœื™ ืื™ื–ื•ืฉื”ื™ ื‘ืงืฉื” ืขืœ ื”ืชื•ืจ, ื•ืœืื—ืจ ืžื›ืŸ, ื”ื•ื•ืจืงืจ ืฉืœื™ ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื”ื’ื™ื“, ื”ื ื” ื ื›ื ืกื” ืœื™ ืขื‘ื•ื“ื”, ืื ื™ ืžื‘ืฆืข ืื•ืชื”. ืกื™ื™ืžืชื™ ืœื‘ืฆืข ืื•ืชื”, ืื ื™ ื“ื•ื—ืฃ ืืช ื”ืขืชืงื•ืŸ ื”ื–ื” ื—ื–ืจื” ืœื”ื™ืกื˜ื•ืจื™, ื•ื›ื›ื” ื‘ืขืฆื ื—ื•ื–ืจ ื—ืœื™ืœื” ื”ืœื•ืค ื‘ืฆื•ืจื” ืžืื•ื“ ืžืื•ื“ ืžื•ืคืฉื˜ืช. ืื– ืื ืื ื™ ืฆืจื™ืš ืจื’ืข ืœื‘ื•ื ื•ืœื—ื–ื•ืจ ืœื”ื™-ืœื‘ืœ ืืจื›ื™ื˜ืงื˜ื•ืจ, ื™ืฉ ืœื ื• ืืช ื”ืืคืœื™ืงืฆื™ื” ืฉืœื ื•, ื™ืฉ ืœื ื• ืืช ื”ืคืจื•ื ื˜-ืื ื“ ื”ื˜ืžืคื•ืจืœื™, ืฉื“ืจื›ื• ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืขื‘ื•ืจ ื•ืœืจืื•ืช ืืช ื›ืœ ืžื” ืฉืงื•ืจื” ื‘ื“ืจืš, ื”ื™ืกื˜ื•ืจื™ ืฉืžืชืขื“, ืžืืฆ'ื™ื ื’ ืฉืžืงื‘ืœ ืืช ื”ื‘ืงืฉื•ืช, ื•ื•ืจืงืจ ืฉืžื‘ืฆืข ืื•ืชืŸ, ื›ืœ ื”ืœื•ืคื” ื–ื” ื—ื•ื–ืจ ื—ืœื™ืœื”, ื•ื”ื™ืกื˜ื•ืจื™ ื•ืžืืฆ'ื™ื ื’ ืฉืฉื ื™ ืžื—ื•ื‘ืจื™ื ืžืื—ื•ืจื™ ื”ืงืœื™ื™ื ื”ืกื•ืฃ ืœื“ืื˜ืื‘ื™ื™ืก ืฉืœื ื•, ืฉื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœืฉืžื•ืจ ืืช ื›ืœ ื”ืชื”ืœื™ืš. ืขื›ืฉื™ื• ืื—ืจื™ ืฉื“ื™ื‘ืจื ื• ืžืื•ื“ ืžืื•ื“ ื‘ืงืฆืจื” ืขืœ ื›ืœ ืกืจื•ื•ื™ืก ื•ืกืจื•ื•ื™ืก, ื–ื” ื ืจืื” ืคืœื•ืก ืžื™ื ื•ืก ื›ื›ื”. ื™ืฉ ืœื ื• ืืช ื”ืืคืœื™ืงืฆื™ื” ื‘ืงืฆื”, ืื•ืชื• ื”ื™ืกื˜ื•ืจื™ ืกืจื•ื•ื™ืก, ืคืจื•ื ื˜ื ื“, ื”ืงื•ื“ ืฉืœื ื• ืฉืœ ื”ื•ื•ืจืงืœ, ื•ื’ื ื›ืฉืื ื—ื ื• ื ืžืฆืื™ื ื‘ืกื•ืฃ ื‘ืคืจื•ื“ืงืฉืŸ, ืื– ื™ืฉ ืœื ื• ื’ื ืื™ื–ืฉื”ื• ื“ืื˜ืื‘ื™ื™ืก ืฉื™ื•ื“ืข ืœืขื‘ื•ืจ ื•ืœืฉืžื•ืจ, ืœื ื”ืœ ืืช ื›ืœ ื”ืชื”ืœื™ื›ื™ื ื”ืืœื”, ื›ืฉืื ื—ื ื• ืขื•ื‘ื“ื™ื ื‘ืกืงื™ื™ืœ, ื”ื”ื—ืœื˜ื•ืช ื”ืืœื” ื”ืจื‘ื” ื™ื•ืชืจ ืžืฉืคื™ืขื•ืช, ืื ืื ื—ื ื• ืจื•ืฆื™ื ืœืขื‘ื•ืจ ื•ืœืขื‘ื•ื“ ืขื, ื“ืื˜ื” ื‘ื™ ืฉื”ื•ื SQL ืื• NO SQL, ื•ื’ื ืขืœ ื–ื” ืืคืฉืจ ืœื“ื‘ืจ ืžืื•ื“ ืžืื•ื“ ื‘ื”ืจื—ื‘ื”, ืื‘ืœ ืื ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืจื•ื‘ ื•ืœืงืžืช ืืช ื–ื” ืœื˜ื•ื‘ืช ื”ืฉืงืฃ ื”ื ื•ื›ื—ื™, ืื– ื–ืืช ื”ืืจื›ื™ื˜ืงื˜ื•ืจื” ื‘ื’ื“ื•ืœ. ื•ืื ื™ ืจื•ืฆื” ืจื’ืข ืื™ื–ื•ืฉื”ื™ ื”ืชื ื—ืช ื”ืงื•ืžื™ืช, ืื ื™ ืœื ื™ื•ื“ืข, ืื ื™ ืžื›ื ืžื›ื™ืจ ืืช ื”ื—ื™ื™ื–ืจ ื”ื–ื” ืฉืื ื—ื ื• ืจื•ืื™ื ืคื” ืขืœ ื”ื ื•ืกื—, ื›ืฉืื ื—ื ื• ืžื“ื‘ืจื™ื ื‘ืขืฆื ืขืœ Durable Execution, ื™ืฆืื• ื‘ืžื”ืœืš ืฉื™ื•ื•ืงื™, ืฉื”ื ืžืืžืฆื™ื ื‘ืขืฆื ืืช ื“ื•ื‘ื•ื ื™ ื”ื™ื. ืœืžื™ ืฉืžื›ื™ืจ, ื“ื•ื‘ื•ื ื™ ื”ื™ื ื–ื” ื‘ืขืฆื ืื™ื–ืฉื”ื• ืื•ืจื’ื ื™ื–ื ื—ื™ ืžืื•ื“ ืžื™ืงืจื•ืกืงื•ืคื™, ืฉื›ืœ ื”ืจืขื™ื•ืŸ ืฉืœื• ื–ื” ืฉื”ื•ื ืขืžื™ื“ ื‘ืกื‘ื™ื‘ื•ืช ืžืื•ื“ ืžืื•ื“ ืงื™ืฆื•ื ื™ื•ืช. ืื– ืœืžื” ืื ื™ ืžืจืื” ืœื›ื ืืช ื–ื”? ื›ื™ ืชื›ื™ืจื• ืืช ื–ื™ื’ื™, ื”ืงืžืื” ืฉืœ ื˜ืžืคื•ืจื”. ื›ืžื” ื˜ืžืคื•ืจืœ ื‘ื˜ื•ื—ื™ื ื‘ื“ื•ืจื‘ืœ ืืงืกืงื™ื•ืฉืŸ ืฉืœื”ื, ืขื“ ื›ื“ื™ ืœืฉืœื•ื— ืจืกื‘ืจื™ ืคืื™ ืœื—ืœืœ ื‘ื™ื—ื“ ืขื ื–ื™ื’ื™, ื™ืฉ ืคื” ืกืจื˜ื•ืŸ ืžืื•ื“ ืžืื•ื“ ืžืขื ื™ื™ืŸ, ืฉื™ืฉ ืคื” ืื™ื–ืฉื”ื• ื˜ืžืคื•ืจืœ ื•ื•ืจืงืจ ืฉืจืฅ ืขืœ ืจืกื‘ืจื™ ืคืื™, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืจืื•ืช ืžืฆืœืžื” ื‘ืœื™ื™ื‘ ืฉืžืฉื“ืจืช, ืชื•ืš ื›ื“ื™ ืฉืขื•ื‘ืจื™ื ืขืœ ื”ืงื•ื“ ื•ืžืกื‘ื™ืจื™ื ืžื” ื”ืžื”ื•ืช ืฉืœ ื˜ืžืคื•ืจืœ ื•ืื™ืš ื–ื” ืงื•ืจื”, ื•ืื ื—ื ื• ื™ื›ื•ืœื™ื... ืœืจืื•ืช ืžืžืฉ ื‘ืฉื™ื“ื•ืจ ืขืฆืžื•, ืื™ืš ื”ื›ื“ื•ืจ ืคื•ืจื— ื”ื–ื” ื™ื•ืฆื ืžื”ืื˜ืžื•ืกืคื™ืจื”, ืžืคืกื™ืง ืœืฉื“ืจ, ื•ื‘ืจื’ืข ืฉืื ื—ื ื• ื—ื•ื–ืจื™ื ืœืžืฆื‘ ืฉื™ืฉ ืงืœื™ื˜ื”, ื”ืฉื™ื“ื•ืจ ืžืžืฉื™ืš, ื•ื›ืœ ื–ื” ืงื•ืจื” ื‘ืืžืช ื›ื—ืœืง ืžื”ื“ื•ืจื‘ืœ ืืงืกืงื™ื•ืฉืŸ ืฉืœ ื˜ืžืคื•ืจืœ. ืื– ื–ื” ืžื”ืœืš ืฉื™ื•ื•ืงื™ ื’ื™ื•ื ื™ ื‘ืขื™ื ื™ื™. ืื– ืื—ืจื™ ืฉื“ื™ื‘ืจื ื• ืจื’ืข ืขืœ ื›ืœ ืžื” ืฉืงืฉื•ืจ ืœื“ื•ืจื‘ืœ ืืงืกืงื™ื•ืฉืŸ, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืฉืžื•ืจ ื›ืœ ืฉืœื‘ ื•ืฉืœื‘ ื‘ืกื˜ื™ื™ื˜, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื ืกื•ืช ื‘ืื•ืคืŸ ืื•ื˜ื•ืžื˜ื™ ืœื”ืžืฉื™ืš ืžื”ื ืงื•ื“ื” ืฉื”ืคืกืงื ื• ื‘ื”, ื•ื’ื ืื ื ืงื ื ื• ื‘ืืžืฆืข, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื—ื–ื•ืจ ื‘ื“ื™ื•ืง ืœื ืงื•ื“ื” ื”ืื—ืจื•ื ื” ืฉืžืžื ื” ืขืฆืจื ื•. ืื–... ื ืขื‘ื•ืจ ืจื’ืข ืœืื™ื–ืฉื”ื• ื“ืžื• ืงืฆืจืฆืจ, ืื– ื”ืขื“ืฆื™ ืืช ื”ืคืงื•ื“ื” ืฉืœ temporal server, ืกื˜ืืจ ื“ื™ื•, ืžื” ืฉื”ื•ื ืขื•ืฉื” ืžืื—ื•ืจื™ ื”ืงืœืขื™ื, ื”ื•ื ื‘ืขืฆื ืžืจื™ื ืœื ื• ืืช ื›ืœ ื”-temporal cluster, ืขื ื›ืœ ื”ืกืจื•ื•ื™ืกื™ื ื”ืฉื•ื ื™ื, ืžื” ืฉื ืฉืืจ ืœื™ ืœื”ืจื™ืฅ ื›ืจื’ืข, ื–ื” ื‘ืขืฆื ืืช ื”-worker ืฉืœื™, ืื ื™ ื›ืจื’ืข ืžืจื™ืฅ ืื™ื–ืฉื”ื• Python worker, ื›ืžื•ื‘ืŸ ื›ื‘ืจ ื ืžืฆื ืคื” ื‘ืชื•ืš ืื™ื–ืฉื”ื• virtual environment, ื•ื’ื ื”ืคืจื•ื™ืงื˜ ื”ื–ื”, ืžื™ ืฉืžืขื ื™ื™ืŸ ืื•ืชื•, ื–ื” ืคืจื•ื™ืงื˜ open source, ืื ื™ ื™ื›ื•ืœ ืœืฉืœื•ื— ืœื›ื ืืช ื”ืœื™ื ืง ื”ื–ื”, ืืœื ืื—ืจื™ ื–ื”, ื•ืžื” ืฉื›ืจื’ืข ืื ื™ ืขื•ืฉื” ื–ื” ื‘ืขืฆื ืžืจื™ืฅ ืืช ื”-workflow ืฉืœื™. ืื– ื”ื“ื•ื’ืžื” ืคื” ื”ื™ื ืžื“ื‘ืจืช ืขืœ ืชืฉืœื•ืžื™ื, ืื‘ืœ ืžื“ื‘ืจืช ืขืœ ืชืฉืœื•ืžื™ื ืžืกื•ื’ ืื—ืจ. ืื ื—ื ื• ื‘ื”ืชื—ืœื” ื“ื™ื‘ืจื ื• ืขืœ ืœืจื•ื‘ ื•ืœื—ื™ื™ื‘ ื•ืœืฉืœื•ื— ืงื‘ืœื”, ื‘ื“ื•ื’ืžื” ื”ื ื•ื›ื—ื™ืช ืื ื—ื ื• ืžื“ื‘ืจื™ื ืคื” ืขืœ ื”ืขื‘ืจืช ื›ืกืคื™ื ืžื—ืฉื‘ื•ืŸ ื‘ื ืง ืœืื—ืจ, ืื‘ืœ ื–ื” ื“ื™ ืื’ื ื•ืก ืœื™ ืœืฆื•ืจืš ื”ื“ื•ื’ืžื”, ืื– ืชืฉื™ืžื• ืœื‘ ืฉื›ืจื’ืข ื™ืฉ ืœื™ ืคื” ืื™ื–ืฉื”ื• UI ืขืœ ื”ืžืกืš, UI ืฉืœ ื˜ืžืคื•ืจืœ, ืืชื ืคืจืงื™ื ืœื‘ ืœืจืื•ืช ืฉื”ื•ื self-hosted, ืื ืขื›ืฉื™ื• ืื ื™ ืื‘ื•ื ื•ืจืขื ืŸ, ืชืฉื™ืžื• ืœื‘ ืฉื™ืฉ ืœื™ ืคื” ื›ื‘ืจ ืื™ื–ืฉื”ื• walkflow ืฉื™ืชื‘ื•ืฆืข, ืื ื™... ืœื•ื—ืฅ ืขืœ ื”-workflow ื”-ID ื”ื–ื”, ื•ื‘ืื•ืคืŸ ืื•ื˜ื•ืžื˜ื™ ืื ื™ ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœืจืื•ืช ืืช ื›ืœ ื”ืžื™ื“ืข ืœื’ื‘ื™ ืื•ืชื• ืชื”ืœื™ืš, ืื ื–ื” ื‘ืจืžืช ื”-Time Stamp, ื›ืžื• ืฉืืžืจืชื™ ืœื›ื, ื™ืฉ ืœื ื• ืคื” ืื™ื–ื•ืฉื”ื™ ื”ืชื—ืœื” ืฉืœ Workflow Execution Started, Activity Started, ืกื™ื™ืžืชื™ ืืช ื”ืืงื˜ื™ื‘ื™ื˜ื™, ืื– ืื ื™ ื—ื•ื–ืจ ืœืชื•ืจ ืžืกืžืŸ ืฉืกื™ื™ืžืชื™, ืžืชื—ื™ืœ ืืช ื”ืืงื˜ื™ื‘ื™ื˜ื™ ื”ื‘ื, ื•ืžืขื‘ืจ ืœื–ื” ืื ื—ื ื• ื™ื›ื•ืœื™ื ื’ื ืœื‘ื•ื ื•ืœืจืื•ืช ืืช ื›ืœ ื”ืชื”ืœื™ืš. ืžืงืฆื” ืœืงืฆื”. ืื•ืจื™, ื–ื” ื”-UI ืฉืœ ื˜ืžืคื•ืจืœ ืขืฆืžื•? ื›ื™ ื–ื” ืœื UI ืฉืœืš. ื–ื” ืžื” ืฉืื•ืชืŸ ื”-open source. ื–ื” ื”-UI, ื ื›ื•ืŸ, ื–ื” ื”-UI ื”-open source ืฉืœ ื˜ืžืคื•ืจืœ, ืฉื”ื•ื ืžืชืžืžืฉืง ื‘ืขืฆื, ื”ื•ื ืื’ื ื•ืกื˜ื™ ืœื›ืœ workflow ื•-activity ืฉืขื•ื‘ื“ ืขื ื˜ืžืคื•ืจืœ, ื–ืืช ืื•ืžืจืช ืฉื‘ืจื’ืข ืฉื”ื’ื“ืจื ื• ืืช ื”ืงื•ื“ ืฉืœื ื• ื›ืžื• ืฉืฆืจื™ืš, ืื ื—ื ื• ื ืจืื” ืืช ื”ืชื”ืœื™ื›ื™ื ื”ืืœื” ืคื”. ื•ื–ื” ื›ืžื•ื‘ืŸ ืžืฉื”ื• ืฉืื ื—ื ื• ืจื•ืื™ื ื‘ื” ืžืื—ื•ืจ ื”ืงืœืขื™ื, ืื– ืžื” ืงืจื” ืคื” ืขื“ ืขื›ืฉื™ื•? ืื– ื“ื™ื‘ืจื ื•, ืืžืจื ื• ืฉื™ืฉ ืœื ื• ืืช ื”-Temporal Server, ื™ืชื ื• ืืช ื”-Worker ืฉืœื ื•, ืฉื”ื•ื ื‘ืขืฆื ื–ื” ืฉืžื‘ืฆืข ืืช ื”ื‘ืงืฉื•ืช, ื•ื™ืฉ ืœื ื• ืืช ื”-Python Run Workflow, ืฉื‘ืกื•ืฃ ืžื—ื–ื™ืจ ืœื ื• ืืช ื”-Transfer Complete, ืื– ื‘ื•ืื• ื ืกืชื›ืœ ืจื’ืข ืขืœ ืžื” ืงื•ืจื” ื‘ืชื•ืš Run Workflow, ืชืฉื™ืžื• ืœื‘, ื™ืฉ ืœื™ ืคื” ืื™ื–ืฉื”ื• ืงืœื™ื™ื ื˜ ืงื•ื ืงื˜, ืื ื™ ืฉื•ื‘ ืžืชื—ื‘ืจ ืœืกืจื‘ืจ, ืคื—ื•ืช ืžืขื ื™ื™ืŸ ืื•ืชื ื• ื›ืจื’ืข, ืžื’ื“ื™ืจื™ื ืคื” ืื™ื–ืฉื”ื• ืงืœืืก ืฉืœ ืคื™ื™ืžื ื˜ ื“ื™ื˜ืœืก, ื•ื‘ืกื•ืฃ, ืžืื—ื•ืจื™ ื”ืงืœืขื™ื, ืงืœื™ื™ื ื˜ ืืงืกืงื™ื•ื˜ ื•ื•ืจืงืคืœื•ื, ืžื” ื”ื•ืจืงืคืœื•ื ืฉืื ื—ื ื• ืจื•ืฆื™ื ืœืจื•ืื• ื•ืœื‘ืฆืข, ืชื›ืฃ ืื ื—ื ื• ื ืขืฉื” ืขืœื™ื• ื“ื™ืค ื“ื™ื™ื‘, ืžืื™ื–ื” ื˜ืกืง ืฉืื ื—ื ื• ืจื•ืฆื™ื ืœืจื•ืื• ื•ืœืงืจื•ื, ื•ื‘ืกื•ืฃ ืžื” ื”-ID ืฉืื ื—ื ื• ื”ื•ืœื›ื™ื ืœืจืื•ืช ืื• ืœืฉืžื•ืจ ืขืœื™ื•. ืืช ื›ืœ ื‘ืงืฉื” ื•ื‘ืงืฉื”. ืื– ืื ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืœื›ืช ืจื’ืข ืœืจื™ืฆื” ืขืฆืžื”, ืื– ื™ืฉ ืœื ื• ืคื” ืืช ื”ืงื•ื‘ืฅ Workflows.py, ื›ืžื• ืฉืจืื™ื ื• ื‘ื“ื•ื’ืžืช ืงื•ื“ ื‘ืžืฆื’ืช, ื™ืฉ ืœื ื• ืคื” Workflow Definition, ื•ื™ืฉ ืœื ื• ื›ืืŸ ืืช Workflow Run, ืื– ืื™ืš ืจื™ืฆื” ื‘ืชืคืœืก ื ืจืื™ืช? ืื ื™ ืฆืจื™ืš ืœื‘ื•ื ื•ืœื”ื’ื“ื™ืจ ืื™ื–ืฉื”ื• retry policy, ื›ื“ื™ ืฉืื ื™ ื™ื“ืข ืœื‘ื•ื ื•ืœื”ื’ื™ื“. ืžืชื™ ื ื›ืฉืœืชื™ ืžื” ื”ื’ื‘ื•ืœื•ืช ื’ื–ืจื” ืฉืœื™, ืื ื™ ืฆืจื™ืš ืœื‘ื•ื ื•ืœื”ื’ื™ื“, ืžื” ื”ืžืงืกื™ืžื•ื ื”ื˜ืžืค ืฉืื ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœื ืกื•ืช ื›ืœ ืคืขื? ืžื” ื”ื˜ื™ื™ื ื“ืœืชื” ื”ื”ื’ื™ื•ื ื™ ืฉืื ื™ ืจื•ืฆื” ืœื—ื›ื•ืช ื‘ื™ื ื•, ืื• ืœืคืขื•ืœ ื‘ืชื—ื•ื ื–ืžื ื™ื ื”ื–ื”? ืื ืงื™ื‘ืœืชื™ ืื™ื–ื•ืฉื”ื™ ืฉื’ื™ืื” ืžืื—ื“ ื”ืกื•ื’ื™ื ื”ื‘ืื™ื, ืืœ ืชื ืกื” ืœืขืฉื•ืช ืืช ื–ื”, ื–ื” ืืงืกืคืฉืŸ ืžื‘ื—ื™ื ืชื™. ืื ื™ ืฆืจื™ืš ืœื”ื—ื–ื™ืจ ืคื” ืฉื’ื™ืื” ืœื™ื•ื–ืจ, ืื• ืฉื’ื™ืื” ืฉืœื ื”ืฆืœื—ืชื™ ืœื‘ืฆืข ืืช ื”ืชื”ืœื™ืš. ืื– ืœื›ืœ ื•ื•ืจืงืคืœื•ืง ื”ื–ื”, ืื ื—ื ื• ืฆืจื™ื›ื™ื ืœืขื‘ื•ืจ ื•ืœื”ื’ื“ื™ืจ ืื™ื–ืฉื”ื• retry policy. ืขืœ ื”ื ื™ื™ืจ, ืฉื•ื‘, ืื ื—ื ื• ืื•ืžืจื™ื, ืชื‘ืฆืข ืœื™ ืืช ื”ืืงื˜ื™ื‘ื™ื˜ื™ ืžืกื•ื’ withdraw. ืžื” ื”retry policy ืฉืœื™, ื•ืžื” ื” payment details, ื–ื” ืžื” ืฉื”ื’ื“ืจื ื• ืœืžืขืœื”. ืชื‘ืฆืข ืœื™ ืืช withdraw. ืกื™ื™ืžืชื™ ืœื‘ืฆืข ืืช ื”ืžืฉื™ื›ื” ืฉืœื™, ืื•ืงื™ื™, ืื– ืชื‘ืฆืข ืœื™ ื‘ืขืฆื ืื™ื–ืฉื”ื• ื“ืคื•ื–ื™ื˜, ืžื” ืงื•ืจื” ื‘ืชื•ืš ืื•ืชื• ื“ืคื•ื–ื™ื˜ ืื• ื‘ืชื•ืš ืื•ืชื• ื•ื•ื™ื“ืจื•, ื‘ื•ืื• ื ื™ื›ื ืก ืœื–ื”, ืื– ืชืฉื™ืžื• ืœื‘ ืฉื™ืฉ ืœื ื• ื‘ืขืฆื ืืช activities.py, ื•ืื ื—ื ื• ื™ื›ื•ืœื™ื ืžืžืฉ ืœืจืื•ืช, ืžื” ืงื•ืจื” ื‘ืชื•ืš ื›ืœ activity ื›ื–ื”, ืขื›ืฉื™ื• ื›ืžื•ื‘ืŸ ืฉืคื” ื–ื” ื‘ืฆื•ืจื” ืžืกื•ืžืœืฆืช, ืื‘ืœ ืื ื”ื™ื™ื ื• ืฆืจื™ื›ื™ื ืขื›ืฉื™ื• ืœื‘ื•ื ื•ืœืขื‘ื•ื“ ืขื ืื™ื–ื•ืฉื”ื™ ืžืืจื›ื“ ื‘ืกืงื™ื™ืœ, ืื• ืœื‘ื•ื ื•ืœืขืฉื•ืช ืื™ื–ื•ืฉื”ื™ ืคื ื™ื™ื”, ื”ืืงื˜ื™ื‘ื™ื˜ื™ ืฉืœื ื• ื–ื” ื”ืžืงื•ื ืœื‘ื•ื ื•ืœื”ื’ื“ื™ืจ ืืช ื”ื‘ื™ื–ื ืก ืœื•ื’ื™ืง, ืื ื—ื ื• ืจื•ืฆื™ื ืœื‘ื•ื ื•ืœืคื ื•ืช ืœืื™ื–ืฉื”ื• API ื—ื™ืฆื•ื ื™, ืื ื—ื ื• ืจื•ืฆื™ื ืœื‘ื•ื ื•ืœืฉืžื•ืจ, ื•ื–ื” ื‘ื“ื™ื•ืง ื”ื ืงื•ื“ื” ืฉืื ื—ื ื• ืฆืจื™ื›ื™ื ืœื—ืฉื•ื‘ ืขืœื™ื”, ืžื” ื”ืคืขื•ืœื” ืฉืฆืจื™ื›ื” ืœื‘ื•ื ื•ืœื”ื™ื•ืช ID and Potence, ื•ื’ื ื”ืžื™ื™ื ื“ืกื˜ ืฉืื ื—ื ื• ื‘ืื™ื ื•ื›ื•ืชื‘ื™ื ืืช ืื•ืชื ืืงื˜ื™ื‘ื™ื˜ื™ื–, ืฆืจื™ืš ืœื‘ื•ื ื•ืœื”ื™ื•ืช ื˜ืžืคื•ืจืœื™ื™ื. ื–ืืช ืื•ืžืจืช ืฉื”ืžืฉื™ืžื•ืช ื”ืŸ ืžืื•ื“ ืžืื•ื“ ืžื•ื’ื“ืจื•ืช, ืžืื•ื“ ืžืื•ื“ ืงื˜ื ื•ืช, ื›ืžื• ื‘ื“ื•ื’ืžื” ืฉืจืื™ื ื• ืฉืœ ื”ื”ื“ืœืงื” ื•ื›ื™ื‘ื•ื™ ืฉืœ ื”ืžื—ืฉื‘. ืื– ื›ืฉืื ื—ื ื• ื‘ืื™ื ื•ืžื‘ืฆืขื™ื ืืช ืื•ืชื” ืžืฉื™ื›ื”, ืื– ื‘ืกื•ืฃ ืื ื—ื ื• ืžืงื‘ืœื™ื ืคื” ืจื™ืฆื” ืฉืœ ื”-withdraw, ื•ื›ื ื” ืœื’ื‘ื™ ื”-deposit. ืžืฆืจืคื™ื ืืช ื–ื” ืœืื™ื–ืฉื”ื• ืคืจื“ ืืกื™ื ื›ืจื•ื ื™. ื•ื‘ืกื•ืฃ ืื ื—ื ื• ืžืงื‘ืœื™ื ืืช ื”-confirmation, ื•ื–ื” ื’ื ืžื” ืฉืงื™ื‘ืœื ื• ื‘ืกื•ืฃ ื‘ืงื•ื ืกื•ืœ ืฉืœื ื•. ืื– ื™ื•ื ื™ ืฉืืœื” ืฉืืœื” ื˜ื•ื‘ื” ืžืื•ื“ ืžืงื•ื“ื, ืžื” ืงื•ืจื”, ืื™ืš ืื ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœืขืฉื•ืช retry, ืื™ืš ืื ื™ ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœื ื”ืœ ื›ืœ ืžื” ืฉืงืฉื•ืจ. ืื– ืื ื™ ื›ืจื’ืข ืขืฆืจืชื™ ืืช ื”-worker ืฉืœื™. ืื ื™ ืืจื™ืฅ ื›ืจื’ืข ืขื•ื“ ืื™ื–ืฉื”ื• workflow. ืื ื™ ืœื ืžืงื‘ืœ ื›ืœื•ื, ื‘ื•ื ื ืงืคื•ืฅ ืจื’ืข ืœ-UI ืฉืœ Temporal, ืฉื™ืžื• ืœื‘ ืฉื›ืจื’ืข ื™ืฉ ืœื™ ืคื” ืื™ื–ืฉื”ื• ืชื”ืœื™ื›ื•ืŸ ื ื•ืกืฃ, ืฉื›ืจื’ืข ื”ื•ื ื ืžืฆื ื‘ืžืฆื‘ ืฉืœ ืจืื ื™ื ื’, ื›ืœ ื”ืงืœืืกื˜ืจ ืฉืœื™ ื‘ืื•ื•ื™ืจ, ื”-work floor started, ื”ื•ื ื›ืจื’ืข ื‘ืกืงื’'ื•ืœ, ื”ื•ื ืขื‘ืจ ืืช ื”-history, ื”-history ืชื—ื™ืœ ืœืฉืžืจ ืœื ื• ื›ืœ ืžื™ื ื™ ื ืงื•ื“ื•ืช ื‘ื“ืจืš, ื ื›ื ืกื” ื‘ืงืฉื” ื‘ืขืฆื ืœืชื•ืš ื”-Transfer Money Task Queue, ื•ื›ืจื’ืข ืื ื™ ื‘ืขืฆื ืžื—ื›ื” ืฉื™ื”ื™ื” ืžื™ืฉื”ื• ืฉื™ื‘ื•ื ื•ื™ืจื™ื ืืช ื”ืžืฉื™ืžื”. ืื– ืฉืžื—ื• ืขืœื™ื™, ืื ื™ ื‘ืžืกืš ื ืคืจื“ ืžืจื™ื ืจื’ืข ืืช ื”ื•ื•ืจืงืจ. ืชื•ืš ืฉื ื™ื™ื”, ืชืฉื™ืžื• ืœื‘, ื”ื•ื•ืจืงืจ ื‘ื ื•ื™ื“ืข ืœืืกื•ืฃ ืืช ื”ืžืฉื™ืžื” ืฉื ื›ื ืกื” ืœืชื•ืจ. ื‘ื˜ื— ืจืื™ืชื ื’ื ื‘ืœื™ื™ื‘ ืฉื”ื”ื™ืกื˜ื•ืจื™, ืฉื›ืœ ื”ื˜ื™ื™ืžืกื˜ืžืคื™ื ืฉืœื ื• ืคื” ื”ืชืงื“ืžื•. ื•ื–ื• ืจืง ื“ื•ื’ืžื” ืื—ืช, ืœืงื•ื— ืฉืœ ื˜ืžืคื•ืจืœ. ืื– ืื ืื ื™ ืขื›ืฉื™ื• ืฆืจื™ืš ืœื‘ื•ื ื•ืœื”ืกืชื›ืœ ืขืœ ืžื” ื–ื” ืื•ืชื• ื•ื•ืจืงืจ, ืื– ืฉื•ื‘, ื‘ืฆื•ืจื” ืžืื•ื“ ืžืื•ื“ ืคืฉื•ื˜ื”, ื™ืฉ ืœื ื• ืืช ื”ืงืœื™ืื ื˜ ืฉืœื ื•, ืื ื—ื ื• ืื•ืžืจื™ื ืœื•, ืื•ืงื™ื™, ื–ื” ื”ืชื•ืจ ืฉืืชื” ื”ื•ืœืš ืœื“ื‘ืจ ืขืœื™ื•, ืกืœื™ื—ื”, ื–ื” ื”ืชื•ืจ ืฉืืชื” ื”ื•ืœืš ืœื”ื–ื™ืŸ ืœื•, ืืœื” ืกื•ื’ื™ ื”ื•ื•ืจืงืคืœื•ืื™ื ืฉืืชื” ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœื”ืจื™ืฅ, ื•ืืœื” ื”ืืงื˜ื™ื‘ื™ื˜ื™ื. ืฉืืชื” ื™ื›ื•ืœ ืœื‘ื•ื ื•ืœื˜ืคืœ ื‘ื”ื. ื–ื” ื”ื›ืœ. ื–ื” ื›ืœ ื”ืงื•ื“ ื”-work-age ืฉืœื ื•. ืžื‘ื—ื™ื ืชื™, ื›ืฉืื ื™ ืจืื™ืชื™ ืืช ื–ื” ื‘ืคืขื ืจืืฉื•ื ื”, ื–ื” ืคื•ืฆื˜ ืคืœื™ื˜ ื”ืžื•ื—. ื•ืื ื™ ื—ื•ื–ืจ ืจื’ืข ืœืฉืืœื” ืฉืœ ื ื˜ื” ืžืงื•ื“ื, ื›ืฉืื ื—ื ื• ืขื•ื‘ื“ื™ื ื‘ืกืงืืœ, ืžื™ืŸ ื”ืกืชื ื–ื” ื ืจืื” ืื—ืจืช ืœื—ืœื•ื˜ื™ืŸ, ืื‘ืœ ื”ืขืงืจื•ื ื•ืช, ื”ืŸ ืขืงืจื•ื ื•ืช ื–ื”ื™ื ืœื’ืžืจื™. ืื™ืคื” ืจื•ืื™ื ืืช ื”ื—ื™ื‘ื•ืจ ื‘ื™ืŸ ื”ืงื•ื“ ืฉืœืš ืœ-UI ื”ื™ืคื” ืฉืœ ื”ื˜ืžืคื•ืจืœ ืฉืžืฆื™ื’ ืœืš ืืช ื›ืœ ื”... ืื™ืคื” ื”ื—ื™ื‘ื•ืจ ื”ื–ื” ืงื•ืจื”? ืื– ืื ื—ื ื• ืœื ื‘ืืžืช ืจื•ืื™ื ืืช ื–ื”, ื–ื” ืคืฉื•ื˜ ื‘ืจืžืช ื”ืงืœื™ื™ื ื˜ ืงื•ื ืงื˜, ื‘ืจื’ืข ืฉืื ื—ื ื• ื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœื”ื’ื™ื“, ื–ื” ื”ืกืจื‘ืจ ืฉืื ื™ ืžืื–ื™ืŸ ืขืœื™ื•, ื–ื” ื›ื‘ืจ ืงื•ืจื” ืžืื—ื•ืจื™ ื”ืงืœืขื™ื, ืื™ืŸ ืœื ื• ืื•ืคืฆื™ื” ืœื‘ื•ื ื•ืœืขืฉื•ืช ื‘ืจืื•ื– ืœืžื” ืกื•ื’ื™ ื”ืืงื˜ื™ื‘ื™ื˜ื™ื ืฉืื ื—ื ื• ืชื•ืžื›ื™ื ื‘ื”ื, ืืœื ื™ืฉ ืœื ื• ื“ืจืš ืœืจื•ื‘ ื•ืœืจืื•ืช, ืจืง ืืช ื”ืจื™ืฆื” ืื• ืืช ื”ืจื™ืฆื•ืช ื”ืื—ืจื•ื ื•ืช. ื™ืฉ ืœื ื• ืื•ืคืฆื™ื” ื’ื ืœื‘ื•ื ื•ืœืคืœื˜ืจ ื›ืœ ืžื™ื ื™, ืื ื–ื” ืจืฅ ื”ื™ื•ื, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืชื–ืžื™ืŸ, ื“ื‘ืจื™ื ืฉืจืฆื™ื ื›ืจื’ืข. ืื ืื ื—ื ื• ืขื•ื‘ื“ื™ื ื‘ืื™ื–ืฉื”ื• ืงืœืืกื˜ืจ, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืกื ืจ ืื•ืชื ืœืคื™ ื ืื™ืžืกืคื™ื™ืกื™ื. ื“ื™ืคืœื™ืžื ื˜ ื–ื” ืžืžืฉ ืžืžืฉ ืชื•ืจื”, ืœืื™ืš ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื”ืฉืชืžืฉ ื‘ื›ืœื™ ื”ืžื˜ื•ืจืฃ ื”ื–ื”. ื˜ื•ื‘, ืื– ืื ื™ ื—ื•ื–ืจ ืœืžืฆื’ืช. ืื– ื›ืžื• ืฉื”ื‘ื ืชื, ื‘ื˜ืžืคื•ืจืœ ื”ื›ืœ ืขื•ื‘ื“ ื‘-workflowื™ื, ืœื ืกืชื ืฉืžืชื™ ืืช ื”ืฉืงืฃ ื”ื–ื” ืžืงื•ื“ื, ื•ืื™ืคื” ื–ื” ื‘ืขืฆื ืคื•ื’ืฉ ืื•ืชื ื• ื‘ืขื™ื“ืŸ ื”-AI? AI Workflows. AI Workflows Everywhere. ืื– ื™ืฉ ืคื” ืื™ื–ืฉื”ื• ืกืจื˜ื•ืŸ ืžืื•ื“ ืžืื•ื“ ืžื’ื ื™ื‘, ืฉืœ ืื™ืš ืืคืฉืจ ืœื‘ื•ื ื•ืœื‘ื ื•ืช ืื™ื–ืฉื”ื• AI Agentื™ื ื˜ืžืคื•ืจืœ, ื ื™ืกื™ืชื™ ืœื‘ื•ื ื•... ืœืขืฉื•ืช ืื™ื–ืฉื”ื• ื“ืžื• ืงืฆืจืฆืจ, ืจืื™ืชื™ ืฉื–ื” ื’ื•ื–ืœ ื™ื•ืชืจ ืžื“ื™ ื–ืžืŸ, ืื– ื”ืขื“ืคืชื™ ืœืชืช ืœื›ื ืœื™ื ืง ืœื™ื•ื˜ื™ื•ื‘, ืžื” ืฉืืชื ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœืจืื•ืช ื‘ืกืจื˜ื•ืŸ, ื–ื” ืื™ื–ืฉื”ื• LLM, ืฉื™ืฉ ืœื ื• ืคื” ืื™ื–ืฉื”ื• ืคืจื•ื ื˜ื ื“, ื™ื•ื“ืข ืœื‘ื•ื ื•ืœืงื‘ืœ ืคืจื•ืžื˜, ื•ืื ื—ื ื• ื™ื›ื•ืœื™ื ืžืžืฉ ืœื‘ื•ื ื•ืœืจืื•ืช ืืช ื”ืจื™ืฆื” ืชื•ืš ื›ื“ื™, ื‘ืกื•ืฃ ื–ื” ื’ื ื™ื•ื“ืข ืœื‘ื•ื ื•ืœื”ืชืžืžืฉืง ืœืื™ื–ืฉื”ื• Stripe API, ืื ื™ ืืฉืœื— ืœื›ื ืืช ื›ืœ ื”ืœื™ื ืงื™ื, ื›ืœ ื”ื“ื‘ืจื™ื, ื›ืœ ื”ืžื•ืฉื’ืช, ืœืกื•ืฃ ื”ื”ืจืฆื”. ืื– ืื—ืจื™ ืฉื“ื™ื‘ืจืชื™, ื•ืฉื™ื‘ื—ืชื™ ื›ืœ ื›ืš ื”ืจื‘ื” ืืช ื”ื›ืœื™ ื”ื–ื”, ืื ื™ ืจื•ืฆื” ืœื‘ื•ื ื•ืœื”ืจื™ื ืœื• ืขื•ื“ ืงืฆืช, ื˜ืžืคื•ืจืœ, ืงื•ื“ื ื›ืœ ื–ื” ื›ืœื™ ืฉื”ื•ื ืื•ืคืŸ ืกื•ืจืกื™, ืื•ืคืŸ ืกื•ืจืก ืœื—ืœื•ื˜ื™ืŸ. ื•ืœื ืจืง ื–ื”, ื”ื•ื ื’ื ื ืชืžืš ืขื›ืฉื™ื• ืขืœ ื™ื“ื™ ื”ืื’'ื ื˜ื™ืง AI ืคืื•ื ื“ื™ื™ืฉืŸ, ืฉื–ื” ื‘ืขืฆื ื”ื—ื‘ืจ'ื” ืฉืžืคืชื—ื™ื, ื•ืžืžืฉื™ื›ื™ื ืœื”ื•ืฆื™ื ืขื“ื›ื•ื ื™ื ืœืœื™ื ื•ืงืก, ืื– ืฉืชื‘ื™ื ื•, ื›ืžื” ื”ื›ืœื™ ื”ื–ื” ื”ื•ื ืœื ื‘ื“ื™ื—ื”, ื›ืžื” ื”ื•ื ืจืฆื™ื ื™ ื•ื›ืžื” ืื ืฉื™ื ื‘ืขืฆื ื—ื–ืงื™ื ืžืืžื™ื ื™ื ื‘ื•, ื•ืื ื™ ื‘ื™ื—ื“ ืื™ืชื. ื•ื™ื•ืชืจ ืžื–ื”, ืื ื›ื‘ืจ ื ื“ื‘ืจ ืขืœ ืกื™ืคื•ืจื™ ื”ืฆืœื—ื•ืช, ืื– ื™ืฉ ืคื” ื”ืจื‘ื” ืžืื•ื“ ื—ื‘ืจื•ืช ืฉืžืฉืชืžืฉื•ืช ื‘ื˜ืžืคื•ืจืœ ืžืื—ื•ืจื™ ื”ืงืœืขื™ื, ืขืœ ืื™ืš ืกื˜ืจื™ื™ืง ืžืฉืชืžืฉืช ื‘ื˜ืžืคื•ืจืœ ื›ื“ื™ ืœืจื•ื‘ ืœื‘ืฆืข ืืช ื”ืชืฉืœื•ืžื™ื ืฉืœื”ื. OpenAI ื ื•ืชื ื™ื ืื™ื–ื•ืฉื”ื™ ืžืขื˜ืคืช ื›ื“ื™ ืœื‘ื•ื ื•ืœืขืฉื•ืช ืกืงื™ื™ืœื™ื ื’ ืœ-HGPT, ื•ื‘ื ื•ืกืฃ ืœื–ื”, ื˜ืžืคื•ืจืœ ื™ื•ื“ืข ืœื‘ื•ื ื•ืœืชืช ืชืžื™ื›ื” ืœืื’'ื ื˜ื™ื ืฉืœ OpenAI ื‘ืฆื•ืจื” ืžืื•ื“ ืžืื•ื“ ื›ืœื™ืœื”. ื ื˜ืคืœื™ืงืก ื”ืฉืชืžืฉื• ื‘ื˜ืžืคื•ืจืœ ื›ื“ื™ ืœื‘ื•ื ื•ืœื”ื’ื“ื™ืœ ืืช ื”-Cloud Operations ืฉืœื”ื. ืกื ืืคืฉื˜ ืžืฉืชืžืฉื™ื ื‘ื˜ืžืคื•ืจืœ ื‘ืฉื‘ื™ืœ ืœืขืฉื•ืช ืœื”ื deploy. ืœืžื™ืงืจื• ืกืจื•ื•ื™ืกื™ื ืฉืœื”ื, ื•ื™ืฉ ื‘ืืžืช ืขื•ื“ ื›ืœ ื›ืš ื”ืจื‘ื” ื“ื•ื’ืžืื•ืช ื‘ืื™ื ื˜ืจื ื˜, ื–ื” ืชื•ืจื” ืžื‘ื—ื™ื ืชื™, ื•ืืคืฉืจ ืœื”ืžืฉื™ืš ื•ืœื“ื‘ืจ ืขืœ ื–ื” ืขื•ื“ ื›ืœ ื›ืš ื”ืจื‘ื” ื–ืžืŸ. ื˜ื•ื‘, ืื– ื ื’ืขื ื• ื‘ื”ืจืฆืื” ื”ื–ืืชื™, ื‘-Basics, ืœืžื™ ืฉื–ื” ืžืขื ื™ื™ืŸ ืื•ืชื•, ืื ื™ ื–ืจื•ืง ืœื›ื ืคื” ืขื•ื“ ื›ืžื” ื ืงื•ื“ื•ืช ืฉื”ืŸ ืžืขื‘ืจ, ืฉืฉื•ื•ื” ืœื—ืงื•ืจ ืขืœื™ื”ืŸ. ืžื™ ืฉืจื•ืฆื” ืœื‘ื•ื ื•ืœืจืงื•ืจ ืื• ืœืงืจื•ื ืขืœ ืื™ื–ืฉื”ื• ืงื•ื ืงืจื ืกื™, ืžื” ืงื•ืจื” ื‘ืขืฆื ืฉืื ื—ื ื• ืจื•ืฆื™ื ืœืขื‘ื•ืจ ื•ืœื”ืจื™ืฅ ื›ืžื” ืืงื˜ื™ื‘ื™ื˜ื™ื– ื‘ืžืงื‘ื™ืœ, ื›ืžื” ืืงื˜ื™ื‘ื™ื˜ื™ื–, ื›ืžื” ื•ื•ืจืงืคืœื•ืื™ื ื‘ืžืงื‘ื™ืœ, ืื™ืš ืื ื—ื ื• ื‘ื›ืœืœ ืžืชืžื•ื“ื“ื™ื ืขื ื–ื” ื‘ืกืงื™ื™ืœ, ื™ืฉ ื’ื ื”ืžื•ืŸ ื’ื™ืฉื•ืช, ืื ื—ื ื• ืขื•ืฉื™ื ืื•ื˜ื• ืกืงื™ื™ืœื™ื ื’ ืœื•ื•ืจืงืจื™ื, ืื™ืš ืื ื—ื ื• ื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœืชืช ืื™ื–ืฉื”ื• ืชื™ืขื“ื•ืฃ ืžื‘ื—ื™ื ืช ื›ืœ ื”ืชื•ืจื™ื ืฉืœื ื•. ืื– ื™ืฉ priority cues ื•-fairness, ืฉื–ื” ื’ื ื ื•ืฉืื™ื ืžืื•ื“ ืžืื•ื“ ืžืขื ื™ื™ื ื™ื. ืื ืื ื—ื ื• ืจื•ืฆื™ื ืœื‘ื•ื ื•ืœืฉืžื•ืจ ืื™ื–ืฉื”ื• state, ื•ืœื”ืขื‘ื™ืจ ืื•ืชื• ื‘ื™ืŸ ื”-workflowื™ื, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื”ืฉืชืžืฉ ื‘ืกื™ื’ื ืœื™ื, ืื• ืื™ื–ืฉื”ื ืžืชื›ื•ื ื™ื. Child workflows, ืžืชื•ืš workflow ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœืขืฉื•ืช invoke ืœืื™ื–ืฉื”ื• workflow ืื—ืจ, ื•ืื– ืื ื—ื ื• ืžืงื‘ืœื™ื ืื™ื–ื•ืฉื”ื™ ื”ื“ื™ืื’ืจืžื”. ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื‘ื•ื ื•ืœื”ื•ืกื™ืฃ ืื™ื–ืฉื”ื• ืžื ื’ื ื•ืŸ ืฉืœ ืชื–ืžื•ื ื™ื, ืกืงื’'ื•ืœื™ื ื’, ื™ืฉ ืชื”ืœื™ื›ื™ื ืฉื™ื›ื•ืœื™ื ืœื—ื›ื•ืช ื‘ืื•ืคืŸ ืจื“ื•ื ื—ื•ื“ืฉื™ื ืขืœ ื’ื‘ื™ ื˜ืžืคื•ืจืœ, ื•ืขื•ื“ ืคืชืจื•ืŸ ืฉื’ื ื ื’ื“ื ื• ืขืœื™ื• ืžืื•ื“, ื“ื™ื‘ืจืชื™ ืขืœื™ื• ืžืื•ื“ ื‘ืงื˜ื ื”, ื–ื” ืกืื’ื” ืคืื˜ืจื ืก ื•ืงื•ืžืคื ืกื™ื™ืฉืŸ, ืื™ืš ืื ื—ื ื• ื™ื•ื“ืขื™ื ืœื‘ื•ื ื•ืœืขืฉื•ืช ืจื™ืงืื‘ืจื™ ืžื›ื™ืฉืœื•ื ื•ืช ื—ืœืงื™ื™ื, ื•ืœื“ืขืช ืœื‘ื•ื ื•ืœืขืฉื•ืช ืืช ื”ืจื•ืœ ื‘ืงื–ื” ื‘ืฆื•ืจื” ื—ื›ืžื”. ืื– ืžื” ื™ื•ืฆื ืœื›ื ืžื”ื”ืจืฆืื” ื”ื–ืืช? ื›ืฉืขื•ื‘ื“ื™ื ื‘ืžื™ืงืจื• ืกื‘ืจื™ืกื™ื, ื™ืฉ ื”ืจื‘ื” ืžืื•ื“ ื›ื™ืฉืœื•ื ื•ืช ื•ื–ื” ืžื•ื’ื“ืจ ื›ื›ื”, ืืงืกืงื™ื•ืฉืŸ ื”ื™ื ื”ื—ื•ืœื™ื” ื”ื—ืœืฉื”, ื˜ืžืคื•ืจืœ ืขื•ื–ืจ ืœื ื• ื‘ืขืฆื ืœื”ืคื•ืš ืืช ื”ืืงืกืงื™ื•ืฉืŸ ืœื”ื™ื•ืช ื”ืจื‘ื” ื™ื•ืชืจ ืขืžื™ื“, ื›ืฉืื ื—ื ื• ื›ื•ืชื‘ื™ื ื•ื•ืจืงืคืœื•ื™ื™ื, ืื ื—ื ื• ื™ื›ื•ืœื™ื ืœื”ืชืขืกืง ื‘ื‘ื™ื–ื ืก ืœื•ื’ื™ืง, ื‘ืืงื˜ื™ื‘ื™ื˜ื™ื– ื•ืœื... ืœื ืœื“ืื•ื’ ืœ-Recovery Logic ืฉืœื ื•, ื–ื” Open Source ืœื—ืœื•ื˜ื™ืŸ, ื–ื” ืžืื•ื“ ืžืื•ื“ ืงืœ ืœืงื—ืช ืืช ื–ื” ืœืคืจื•ื“ืงืฉืŸ, ื•ืชื•ื“ื” ืจื‘ื” ืขืœ ื”ื–ืžืŸ.

โš™๏ธ Pipeline jobs

StageStatusAtt.UpdatedError
download done 1/3 2026-07-20 14:56:46
transcribe done 1/3 2026-07-20 14:57:07
summarize done 1/3 2026-07-20 14:57:37
embed done 1/3 2026-07-20 14:57:39

๐Ÿ“„ ะžะฟะธัะฐะฝะธะต YouTube

ะŸะพะบะฐะทะฐั‚ัŒ
โ€œWrite Less Code. Make It More Durable.โ€

Distributed systems fail all the timeโ€”deployments happen, pods restart, networks glitch. Yet while we persist data, we rarely persist execution.

In this talk, weโ€™ll explore why handling retries, state, and recovery logic turns simple flows (like payments) into complex, fragile systems - and how Temporal changes that. Instead of building your own workflow engine by accident, youโ€™ll learn how to make execution durable by design.