Mastering API Architectures Ebook from NGINX
Learn how to design, operate and evolve your API architecture through a combination of the authors’ real-life experience and an accompanying case study that mimics and event management conference system that allows attendees to view and book presentation sessions. Chapter 10 has a high-level overview of that case study.
Topics you will learn in this ebook:
- The fundamentals of REST APIs and how to best build, version, and test APIs
- The architectural patterns involved in building an API platform
- The differences in managing API traffic at ingress and within service-to-service communication, and how to apply patterns and technologies such as API gateways and service meshes
- Threat modeling and key security considerations for APIs, such as authentication, authorization, and encryption
- How to evolve existing systems toward APIs and different target deployments, such as the cloud
After reading you will be able to:
- Design, build, and test API-based systems
- Help to implement and drive an organization’s API program from an architectural perspective
- Deploy, release, and configure key components of an API platform
What this book is not:
This book is not solely focused on cloud technologies. Many of you have hybrid architectures or entire systems hosted in data centers. This book took care to cover the design and operational factors of API architectures that support both approaches.
The book is not tied to a specific language.
Developers who should read this book:
- Have been coding for several years and have a good understanding of common software development challenges, patterns, and best practices.
- Increasingly realize the software industry is moving toward building service-oriented architecture (SOA) and adopting cloud services, making building and operating APIs a core skill (Chapter 8).
- Want to learn more about designing effective APIs and testing them (Chapter 2).
- Want to expand their knowledge of various implementation choices, (e.g., synchronous versus asynchronous communication) and technologies.
- Want to be able to ask the right questions and evaluate which approach is best for a given context.
What you will need:
This book doesn’t favor one style of architecture or a specific language. The focus is on the approach. Code examples are available in the accompanying GitHub repository.