Publisher's Synopsis
Design scalable distributed systems by understanding the benefits and shortcomings of monolithic, microservice, and hybrid approaches and make more informed business decisions
Key Features
- Build intelligent solutions by integrating machine learning and artificial intelligence (AI) services in your distributed system's products
- Learn how to manage complexity in the cloud and automate the deployment of your solutions
- Understand how to secure your distributed solutions in the cloud
Book Description
Despite its popularity, people and organizations still struggle to use the cloud or make the most of its features. Many choose microservices architecture by default without really understanding the business context, architectural considerations, and future implications. Designing Distributed Systems with .NET and Azure provides a hands-on approach to cloud implementation and associated methodologies that will have you up and running, and productive in no time.
With this book, you'll learn how to architect and build the right type of distributed solution. You'll get to grips with distributed systems from the ground up, focusing on planning, architecting, building, and deploying using .NET and Microsoft Azure.
The book starts by helping you understand the difference between monolithic systems and microservices and later demonstrates how to secure distributed systems using Azure-based security. Next, you'll focus on distributed programming models and algorithms before progressing to learning why DevOps is important and understanding how to deploy your solution automatically to the cloud. Finally, you'll explore how to test distributed systems.
By the end of this book, you'll have learned how to architect, build, and deploy distributed apps and be able to decide whether these distributed apps should be based on microservices or monolithic services.
What you will learn
- Explore the distributed programming models and algorithms used for building and managing distributed systems
- Speed up the development of .NET web app and Xamarin mobile solutions using the right frameworks, tools, and SDKs
- Understand what Azure DevOps is and how to use it in your app
- Design fault-tolerant systems by identifying problems within your solutions
- Infuse AI into your solution to improve data quality and understand trends
- Architect a secure distributed solution using Azure-based security
- Test solutions using functional, system, and performance-testing techniques
Who This Book Is For
This book is for engineers and developers who want to learn how to implement large distributed systems and solve the challenges they face while building large and complex applications. Intermediate-level experience of the C# language and .NET Core is expected to get the most out of this book.