Durable Computing For Scala
Durable execution is a property of programs where transient failures of the hardware a program is being executed on do not impact the externally observable semantics of a program. Durable execution is critical because most software today is deployed to the cloud on commodity hardware that may fail or be restarted at arbitrary points.
Today, most developers build durable execution at the application level on top of a non-durable foundation using techniques such as event sourcing. But is this the best we can do?
The current approach forces developers to deal with durability themselves and mix concerns of durability with their core business logic. Is this like the world we were in with asynchronous and concurrent programming before the development of ZIO and could durability be handled at the level of the framework instead of the application?
In this talk attendees will look at what durable computing means, why it is important, and some current and upcoming solutions to let you take concerns about durability outside of your application logic and focus on what you want to do. See you there!