Polyglot workflow queueing


I’d like to schedule workflows to run on a different machine, using different SDK.
Our Backend application is TypeScript and I’d like to spin a few Go services to handle different workflows - specifically crons and long running workflows.

Can I somehow do this natively with Temporal or should I be thinking about introducing something like RabbitMQ to distribute messages from TypeScript to Go, and then have “starters” in Go execute Temporal workflows?

This can be done natively. It is very common to have a worker on a task queue in Go where workflows and/or activities are implemented and trigger/communicate with them via a TypeScript client (or vice versa). Workflows and activities do not have to be in the same language as the client that calls them.

1 Like

Awesome. Thank you

Here are some polyglot samples for reference:

  1. polyglot sample
  2. pendulum sample (uses all 4 sdks)
1 Like

Taking a look. Thank you @tihomir