Hacker News new | ask | show | jobs
by sunny--tech 1582 days ago
It still boggles my mind that, in an age where K8s is huge and K8s's reconciliation loop pattern is well recognized, Temporal has yet to put "reconciler" or "state-machine" in their documentation or descriptions.

I say this as someone who loves using Temporal and see a big future for them.

Temporal is a managed state-machine. If you're familiar with K8s, you can think of it as a dedicated reconciler. Plain and simple.

Do you want a resource to go from one state to another (i.e. user orders food -> food is delivered) regardless of transient errors and other hiccups? Temporal handles the plumbing of driving your resource to it's desired end state.

Do you have a workflow that has multiples steps? Can anyone of those steps fail for whatever reason and you'll need to figure out how to do retrying/cleaning up? Temporal handles that.

Essentially you can write your business logic without the worry of including the (often) boilerplate retry, cleanup, scheduling, etc logic. If you're familiar with K8s reconciliation and how it retries failed operations again and again until it reaches the goal, it's much like that.

Temporal can do much more than that, but that's its bread and butter and I'm trying to describe it simply so that people can understand. It is a bit of a paradigm shift and has a bit of a learning curve when you first start using it.

But like others have said, it's very powerful.

1 comments

ctrl+f "state machine" on this page :) but yeah this is a very good perspective on temporal. we should talk, if you're interested in helping us tell our story better.

i'm actually interested in a longer form "Temporal vs K8s" comparison - can make a case for Temporal atop k8s, or Temporal replacing k8s (already had a couple customers talk to us about this). It's a nuanced story to tell and I'm not sure if it has a conclusion.

The company I work at runs a HA setup of Temporal on K8s, so Temporal atop k8s is a great recipe. I'd be curious to hear the reasoning for Temporal replacing K8s (or do you just mean replacing a piece of k8s?) Seeing as how as reconciliation is just a tool it uses for it's container orchestration, not sure Temporal would replace that but an interesting idea nonetheless.
yeah tbh this idea came from our users so i cant really speak to it but they really mean replacing k8s. this one for example is a large Jamstack/CI/CD provider with very spiky workloads. To them, k8s, ecs, fargate, etc are all too slow and declarative, they need to spin up + spin down (major motivation, for cost) infra way faster and do more custom stuff so they turn to us. i dont claim to fully understand it but does that give a hint?