When one of the co-creators of the popular open-source stream-processing framework Apache Flink ventures out to launch a new startup, it is definitely worth taking notice. Stephan Ewen, one of the original members of the Flink team since its inception in 2010, is now making waves again as he embarks on a new journey with the launch of Restate. Alongside his fellow Flink committers and former partners from Data Artisans/Ververica, Igal Shilman and Till Rohrmann, Ewen aims to revolutionize the world of distributed application development through their new workflows-as-code startup.
“Our overall mission with Restate is to make distributed application development easier.”
– Stephan Ewen, Co-founder of Restate
In a recent announcement, Restate unveiled its successful completion of a $7 million seed funding round. With its open BSL-licensed version reaching version 1.0, and the launch of its managed cloud service, Restate is showing no signs of slowing down.
The promise of Restate lies in its speed and lightweight nature, allowing developers to utilize it in scenarios where traditional workflow systems would have been slow and resource-intensive. Powered by a durable execution engine, Restate is able to establish fault-tolerant communication between services and processes, while also integrating seamlessly with function-as-a-service platforms such as AWS Lambda and Cloudflare Workers. While it is an ideal tool for microservices architecture, Restate can also be employed for task queues, event processing, and service orchestration in various systems, including inventory management and reservations.
However, Restate is not the first of its kind. Another open-source platform called Temporal offers a somewhat similar feature set. Nevertheless, Ewen and his team argue that their system is faster and more lightweight.
After spending thirteen years working on Flink, Ewen and his team felt it was time to tackle a new challenge. Ewen explains, “During our time with Flink, we noticed how certain use cases kept recurring. People were using Flink in ways that it was not intended for, particularly for transactional orchestration.”
He continues, “Users told us that they couldn’t find anything else that fulfilled their requirements, so they were using Flink as an alternative. After seeing this happen repeatedly, the team decided that if they were going to build another company, they would seek out a more elegant solution to this problem.”
Today, almost every modern application relies on a series of workflows that are handled by a distributed set of services that must communicate reliably with each other. It takes a highly skilled team to build a fault-tolerant distributed system like this. Many companies even choose to build their own from scratch. However, this is becoming more of a standard requirement rather than a way to differentiate and stand out among competitors.
Ewen explains, “After closely examining this issue, the team combined some of the stream-based processing concepts from Flink with the workflows-as-code concept, and added a specialized event log. This is because at the core of every workflow engine lies a log.”
He further elaborates, “Restate takes the workflow-as-code idea and adds a few other stream-processing-inspired concepts. We have evolved it into a more comprehensive distributed programming model that leverages durable execution, virtual objects, and durable promises, all built on an event-driven foundation.”
Equipped with a small, lightweight, and fast execution engine, Restate is poised to challenge the status quo. Ewen highlights the fact that it can be used in situations where traditional workflow engines are not suitable. A prime example would be e-commerce shopping carts, where a lightweight workflow engine with built-in guarantees, durable execution, and automatic retries in case of an error can ensure that abandoned items in a cart are released after a set time, reducing the risk of any failures in the purchasing process.
“Restate essentially performs the same tasks as traditional workflow engines, but on a much more lightweight foundation. Moreover, it extends beyond standard workflow use cases, incorporating communication and state management as core elements. This makes it an excellent tool for building a proper microservices architecture,” states Ewen confidently.
Along with the launch of their version 1.0 product, Restate has also unveiled its hosted Restate Cloud platform, now in early access. As of now, the service is available for free while the team continues to gather feedback and determine the best approach for monetization.
Bringing Restate to fruition required significant resources, and the company’s recent funding round has enabled them to expand their team and develop their infrastructure further. They also plan on expanding their SDK to support more languages, in addition to the current TypeScript, Java, and Kotlin support. The funding round was led by Redpoint Ventures, with participation from Essence VC, firstminute.capital, and notable angels such as Datadog founder Oli Pomel, and Apache Kafka and Confluent founders Jay Kreps and Neha Narkhede.
Kreps applauds Restate’s fresh approach, commenting, “Creating distributed transactional applications that are correct, resilient, and scalable remains a significant challenge. Restate’s fusion of durable execution and event-driven architectures is a major step towards resolving this issue.”