Hacker News new | past | comments | ask | show | jobs | submit login

Yeah, same with Cadence/Temporal. The one caveat is that you have to move all observable effects into activities so that they can be cached. Under the hood, the engine replays functions to rehydrate them, if necessary.



I'm also one of the core developers of Orleans. Ironically, I recently joined Temporal. There are definitely some similarities, but also major differences between the models, especially when it comes to the execution model and fault tolerance.


Since you're an expert on both, do you mind discussing which of the two you like better? And the reasons behind it?


After more than a decade of working on Orleans and only three weeks on Temporal it's foolish of me to talk about what I "like better" :-). I'm working on a couple of conference talks to compare the two approaches. In short, Orleans is biased towards quick low latency operations. Longer running workflow style operations are totally doable, but require extra application logic and thinking. Temporal's main abstraction is a workflow. So, it's biased towards reliable execution (with retries if needed) of business processes that may take seconds or days/months. Orleans executes application code within the runtime process. Temporal orchestrates execution of external application workers (processes) I started referring to it as Inversion of Execution. Orleans is .NET. Temporal currently provides Go and Java SDKs. These are just top-level differences that come mind. There are many others. But there are also major similarities.


Awesome! Thanks for the quick comparison




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: