Concurrency is hard, asynchronous programming is hard. This is why we still design systems using thread-safe mentality. The consequences are harsh. We are blocking threads. Our services spend most of the time waiting for IO. We are wasting resources and generating unnecessary costs.
Not anymore! With introduction of Akka we get a very powerful toolkit which makes asynchronous programming much easier.
I am going to give you an introduction to Akka by showing how we've managed to improve our services at Zeebox. We increased the capacity from 1000 users per server to 10k users by using Akka and embracing the reactive programming.
The source code for this presentation is available at github:
https://github.com/piotrga/asyncer