Restate + Kafka = Event-driven apps, where event-driven is an implementation detail
Blog post from Restate
Restate version 0.3.0 introduces the capability to integrate with Kafka, allowing for seamless incorporation of event-driven architectures into applications by subscribing to Kafka topics and invoking services based on incoming messages. This integration enables developers to write sequential code that operates asynchronously, benefiting from event-driven features without dealing with complex challenges such as state persistence and message ordering. Restate simplifies the execution of event-driven workflows by ensuring exactly-once semantics and facilitating the blending of RPC and Kafka communication in microservices architecture. Developers can easily set up this integration by defining an event handler, configuring Restate to subscribe to Kafka topics, and instructing it to forward events to the handler, although the current lack of a backpressure mechanism is noted as a limitation to be addressed in future updates.