Efficient and reliable microservices
ok.ru is one of the most popular social networks in Russia and top 6 globally. It is in the top 20 sites among similarweb's top global websites list. More than 70 million people use ok.ru regularly to share their valuable stories with friends and family, watch and stream videos, listen to music and play games together. ok.ru employs hundreds of different microservice applications to serve users' requests. Many of these services are built as stateful applications - they store their data locally, embedding a Cassandra database into the application's JVM process. This challenges the usual way of building applications - a stateless microservice with a separate remotely accessible database cluster. In this talk I'll try to cover the advantages of stateful vs stateless microservices, discuss how statefulness affects reliability and accessibility of services and how it helps to build faster applications.We'll go step-by-step through building a stateful application service, delving into its architecture, major components as well as significant challenges and their solutions.