Historically writing correct concurrent, scalable and fault-tolerant applications has been very hard. Akka is an attempt to simplify writing concurrent, scalable and highly available software for the JVM. Akka has an API both for Scala and Java. Akka uses the Actor Model together with Software Transactional Memory (STM) to raise the abstraction level. For fault-tolerance it adopts the “Let it crash” model which help in building self healing always on systems.
The presentation would walk through the Akka features for building a web scale system. We would look at a real world case study in which knoldus developed a web scale framework using Akka which is capable of processing 150 million streaming messages a day. We would discuss the architecture and key design decisions.
Takeaways would include an understanding of Akka, its features which would help in developing a scalable system, potential architecture and pitfalls to be cautious about.