Scale Out and Conquer: Architectural Decisions Behind Distributed In-Memory Systems
Distributed platforms, like Apache Ignite, rely very much on horizontal scalability. More machines in your cluster - better performance of your application. Got twice faster after adding the second machine to your farm? Ten times faster after adding ten machines? Is that always true? What is the responsibility of the platform? Where are its limits? And where does engineers responsibility begin?
In this talk we will cover compromises and pitfalls engineers face when designing distributed systems:
- Advantages and disadvantages of different data-sharding algorithms
- Effective data models for distributed environment
- Synchronization and coordination in distributed systems
- Scalability issues at cluster nodes