ElixirConf 2017 - Back on Your Feet - by @cloud8421
When writing resilient Elixir applications one of our major concerns is state: where do we store it, what happens to it when a process crashes, how do we efficiently recreate it.
In this talk, we’ll look at an example application and apply different techniques that can be used to protect and recover state, each one with specific implications and tradeoffs.
All of the techniques shown in this talk can be applied to everyday development.
At first I didn’t really like how the talk got along. My usecases do rarely rely on external api’s and I really hoped to get some insight into using GenServers in a more secure way (aka do not loose data) in an app, which is backed by postgres and where data needs to be stored savely by myself and not by an external provider. Only a bit after I finished watching the talk I realized, that I could treat my postgres database the same way as an external api. For saving data send it to the db and for retrieval ask the fleet of GenServers, which can handle things like timeouts on stale data and refresh rates. But I think in such a usecase this would mostly make sense if the performance benefit is really needed.