This concept of Virtual Queues is huge. I've talked about the idea of having a "queue per object in your DB" a few times here. We're using Temporal, and had to build this type of idea on top: an orchestrator that let's you define control flow for jobs/workflows that are owned by different objects.
It's actually an extremely hard problem, and something I've been longing for at the durable execution layer for a while now. With a virtual-queue, you can actually define business logic for how your jobs are executed, parallelized etc.
In our case, we do this for building an execution graph, from a set of deploys that need to go out in specific order. We had to build the primitives on top of our DB + some glue to the durable execution layer.
Restate 1.7 is out. It is the biggest release in over a year!
The star of this release is 𝗳𝗹𝗼𝘄 𝗰𝗼𝗻𝘁𝗿𝗼𝗹, powered by 𝘃𝗶𝗿𝘁𝘂𝗮𝗹 𝗾𝘂𝗲𝘂𝗲𝘀.
Restate can now steer load across your the durable functions, agents, and event-driven services with flexible rules.
Together with Restate's existing capabilities for durable execution, stateful functions (virtual objects), and reliable RPC/messaging, it forms a durable foundation for your backends and agents that goes much beyond traditional durable execution.
And all of it in a single dependency-less binary.
Read more here:
restate.dev/blog/announcing-…