This book is a comprehensive guide to designing scalable and maintainable software written by an expert. It covers the principles, patterns, anti-patterns, trade-offs, and concepts that software developers and architects need to understand to design software that is both scalable and maintainable.The book begins by introducing the concept of monoliths and discussing the challenges associated with scaling and maintaining them. It then covers several anti-patterns that can lead to these challenges, such as lack of isolation and internal shared libraries.The next section of the book focuses on the principles of good software design, such as loose coupling and encapsulation. It also covers several software architecture patterns that can be used to design scalable and maintainable monoliths, such as the layered architecture pattern and the microservices pattern.The final section of the book guides how to migrate monoliths to distributed systems. It also covers how to test and deploy distributed systems effectively.
- Available now
- New eBook additions
- Most popular
- Try something different
- Test Prep eBooks
- Cookbooks Galore!
- In Another Era: Top Historical Fiction
- Up Close and Personal - Biographies & Autobiographies
- New kids additions
- New teen additions
- See all ebooks collections
- Available now
- New audiobook additions
- Most popular
- Try something different
- The Great Courses
- Top Thrillers
- New kids additions
- New teen additions
- See all audiobooks collections
- Spanish Titles
- Para Adolescentes
- Chinese Titles
- Japanese Titles
- French Titles
- Livres en français
- See all language collections collections