Chapter 3. Architect Your Service

Architecting your service involves decomposing a larger system into smaller components, each with well-defined interfaces and coupling, so that in aggregate the system behaves and performs as desired.

Follow these guidelines to architect a reliable system on the cloud:

  • Define application programming interfaces (APIs) to structure the coupling between components while creating an abstraction from implementation details.

  • Deploy a service-oriented architecture to create a product from a collection of services, and deploy microservices architectures to create individual services.

  • Determine whether operations are synchronous, asynchronous, or batch based on desired simplicity, responsiveness, coupling, reliability, and cost efficiency.

  • Design how each service will scale horizontally and vertically to accommodate more traffic and data by leveraging additional computational resources.

  • Leverage frameworks and platforms to more efficiently develop services across the organization while making it easier to adopt best practices.

In this chapter, we’ll explore each of these steps in depth to architect a reliable service.

Application Programming Interfaces (APIs)

APIs define the coupling between components like a client and server. They define a contract between components to ensure their interactions work as intended. API standardization improves the usability and stability of the interface, and reduces the cognitive load for developers ...

Get Building Reliable Services on the Cloud now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.