cadence, temporal Queue Worker
이글은 Temporal의 queue worker에 관한 docs를 번역한 글입니다.
Workflow나 Activity Task가 scheduled되면 각 task Queue에 실제 task가 담기게된다. 이 taskqueue는 client,server입장에서는 prgramically하게 정하는 task-list-name이 바로 이것이다.
Task Queue는 매우 가볍습니다.
Worker의 taskqueue 에 동기 rpc로 polling합니다. 이는 몇가지 이득이 있습니다
그림을보면, taskQueue protocol로 dequeue task하여 task를 execute한다. task queue protocol은 workerprocess에서 구현되어진 workflow/activity를 register 하고 trigger 하는 일련의 protocol이다.
task queue는 worklfow,activity Task가 여러개 들어갈수있고(n:1),
workflow,activity Task는 worker1개의 여러개가 할당될수있습니다.(worker에서는 동시에 실행가능하니까),
worker는 해당 task를 실행하기위해 activity TaskQueue를 listening하고 있어야합니다.