The Effect of Microservices on API Design
by Al Tsang
@altsang
Slicing and Dicing with Consequences
Background
About Al
9/25/2017 Express Gateway 3
Wrestled with this technical “alligator” as both practitioner and
vendor
Founder and CEO of LunchBadger
Co-Founder and CTO of StrongLoop (acquired by IBM, 2015)
VP of Engineering (Platform, eCommerce) at Shutterfly
VP of Engineering at cFares
OSS Community Member and Contributor
LoopBack
Express Gateway
Monolith vs. Microservices
9/25/2017 Express Gateway 4
Business requirements change rapidly AND continuously – so the need
for shipping updated version of your app are increasing exponentially.
A microservice app
Continuous updating in parts.
A monolithic app
All or nothing — a big, giant thing that can’t
fit through the shipping door.
vs.
Microservices:
an ideal that’s been out there for a long time
Decades of best practices in the modern web era
Web-scale experiences (Amazon, Google, Netflix, etc)
Cloud native technologies
Microservices as individual processes
Processes encapsulated in containers
Containers orchestrated
9/25/2017 Express Gateway 5
Microservices and APIs
The natural evolution of microservices are APIs to the “N” client - client
traditionally was built by the company, but now can be built by anyone
APIs = business leverage and amplification
9/25/2017 Express Gateway 6
Challenges
An Architectural Style, Not a Fixed Blueprint
Microservices are the new norm – but also
more of an architectural style
There are too many ways to slice and dice
9/25/2017 Express Gateway 8
Problem #1: Services can be discreetly defined
in many ways
– Business capability
– Domain and subdomains
– Model
9/25/2017 Express Gateway 9
Problem #2: Deployment units can
vary in granularity
– How many services per host?
– What services per host?
9/25/2017 Express Gateway 10
Problem #3: APIs are at another level
9/25/2017 Slicing and Dicing with Consequences 11
Optimal microservices at odds for consumption
2
1
3
customer name
Item with info
rating
1
2
3
– APIs = engagement
– Engagement requires
mashups/aggregation
– Too big, hard to
maintain
promotions
Customer name1
4
Problem #4: Each Engagement Has Different
Permutations
9/25/2017 Slicing and Dicing with Consequences
Clients can be unknown and
clients can be many
– APIs must
somehow be
dynamic Item + description2 rating3
customer name1
item + descript2
item + descript2
item + descript2
Item + description2 rating3
v
customer name1
Item + long
description
2 imageX
personalization
Z
promotions4
Problem #5: Many Engagements
9/25/2017 Slicing and Dicing with Consequences 13
2
1
3
promotions
personalization
customer name
music
Z
1
s
4
+ ? =
z
s
4
x
customer1
item + desc2
item + desc2
item + desc2
Solutions
Problem: Services can be
discreetly defined in many
ways
– Business capability
– Domain and
subdomains
– Model
Solution
Step #1: Start a map
– Map your business with entities
first
and then with operations
– Bubble up first class operations
– Treat EVERYTHING as a
resource
9/25/2017 Express Gateway 15
Problem: Deployment
units can vary in
granularity
– How many services
per host?
– What services per
host?
Solution
Step #2:
Continue the map
– Look at your past
consumption and
project your future
consumption
– Mark your hotspots for
deployment granularity AND scale
2
1
3
Solution
9/25/2017 Express Gateway
Step #3: CQRS
– Aggregate query models (presentation)
– Finite command models (actions)
Problem: Optimal
microservices at odds for
consumption
– APIs = engagement
– Engagement requires
mashups/aggregation
– Many unknown clients =
many engagements
promotions
personalization
customer name
music
Z
1
s
43
+ =
All Step #3 problems can be solved with CQRS
API Gateway Pattern
Means to an End: The API Gateway
Pattern
Centralized Middleware
Public APIs
– Authentication
– Security
– Traffic Control
– Ops
– Logging
– Transformations
– Etc
API Gateway
9/25/2017 Express Gateway 19
Client Only for internal usage
Only for specific
partners
AWS Lambda, etc
Means to an End: The API Gateway
Pattern
Dynamic Orchestration and Mashup
– Optimized endpoints
– Request collapsing
– And more
– GraphQL
API Gateway
Invoices DB schema
Customers DB schema
Orders DB schema
9/25/2017 Express Gateway 20
Client
9/25/2017 Express Gateway 21
Wrap Up
Quick Plugs: Express Gateway
9/25/2017 Express Gateway 22
Backed by:
Quick Plugs - LunchBadger
Build, manage, and deploy your
microservices as APIs through one unified
experience:
– Express Gateway - Management
– Express (LoopBack) - Composition
– Docker and Kubernetes - Cloud Native
Portable Runtime
9/25/2017 Express Gateway 23
Join Us!
9/25/2017 Express Gateway 24
Express Gateway
www.express-gateway.io
github.com/
ExpressGateway/express-gateway
@express_gateway
facebook.com/ExpressJSGateway
Lunchbadger
www.lunchbadger.com
@lunchbadger
facebook.com/LunchBadger

More Related Content

PPTX
Why Domain-Driven Design and Reactive Programming?
PDF
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
PPTX
Mediterranea.apidays.io 2013: APIs for Biz Dev 2.0 - Which business model?
PPTX
Running the-next-generation-of-cloud-native-applications-using-open-applicati...
PDF
Let's be real. Quarkus in the wild.
PPTX
Message Driven Architecture in Grails
PDF
LeaseWeb API Architecture @ APINL Meetup
PPTX
A Connector, A Container and an API Walk into a Bar… Microservices Edition
Why Domain-Driven Design and Reactive Programming?
Build and Manage Serverless APIs (APIDays Nordic, May 19th 2016)
Mediterranea.apidays.io 2013: APIs for Biz Dev 2.0 - Which business model?
Running the-next-generation-of-cloud-native-applications-using-open-applicati...
Let's be real. Quarkus in the wild.
Message Driven Architecture in Grails
LeaseWeb API Architecture @ APINL Meetup
A Connector, A Container and an API Walk into a Bar… Microservices Edition

What's hot (20)

PDF
Automated Processes for Even Better APIs
PPTX
Cognitive IBM Watson Services for Bluemix Developers
PPTX
ACDKOCHI19 - Rapid development, CI/CD for Chatbots on AWS
PPTX
BizTalk on App Services
PPTX
Introducing Windows Azure BizTalk Services
PDF
apidays LIVE Jakarta - Better API DX with a CLI by Phil Nash, Twilio
PDF
Introducción al JAMStack - JS Ourense
PPTX
Trusting an API Spec
PDF
Cloud Foundry Summit 2014 - IBM Bluemix DevOps Services lightning talk
PPTX
APIdays Zurich 2019 - Serverless architecture: focus on code, performance and...
PDF
Webcast: API-Centric Architecture for Building Context-Aware Apps
PPTX
Mule: What's New and Coming?
PDF
apidays LIVE Singapore - Next-generation microservice architecture based on A...
PPTX
APIdays Paris 2018 - Europ Assistance, the transformation through Public APIs...
PDF
Introduction core web vitals
PPTX
IBM Codename: BlueMix DevOps Services for Rapid Software Delivery (Cloud Foun...
PDF
APIdays Paris 2018 - What a Mesh! Laurent Doguin, DevRel VP, Clever Cloud
PDF
2010 code camp rest for the rest of us
PDF
Red Hat Summit 2017: Mobilizing and Securing Red Hat JBoss BPMSuite & BRMS
Automated Processes for Even Better APIs
Cognitive IBM Watson Services for Bluemix Developers
ACDKOCHI19 - Rapid development, CI/CD for Chatbots on AWS
BizTalk on App Services
Introducing Windows Azure BizTalk Services
apidays LIVE Jakarta - Better API DX with a CLI by Phil Nash, Twilio
Introducción al JAMStack - JS Ourense
Trusting an API Spec
Cloud Foundry Summit 2014 - IBM Bluemix DevOps Services lightning talk
APIdays Zurich 2019 - Serverless architecture: focus on code, performance and...
Webcast: API-Centric Architecture for Building Context-Aware Apps
Mule: What's New and Coming?
apidays LIVE Singapore - Next-generation microservice architecture based on A...
APIdays Paris 2018 - Europ Assistance, the transformation through Public APIs...
Introduction core web vitals
IBM Codename: BlueMix DevOps Services for Rapid Software Delivery (Cloud Foun...
APIdays Paris 2018 - What a Mesh! Laurent Doguin, DevRel VP, Clever Cloud
2010 code camp rest for the rest of us
Red Hat Summit 2017: Mobilizing and Securing Red Hat JBoss BPMSuite & BRMS

Similar to Slicing and Dicing with Consequences: The Effect of Microservices on API Design (20)

PPTX
The Effect of Microservices on API Design
PPSX
Microservices, Containers, Kubernetes, Kafka, Kanban
PPSX
Microservices Docker Kubernetes Istio Kanban DevOps SRE
PDF
Acme Freight: Developing Microservices and APIs on Bluemix
PDF
Webinar unlock the power of adc management and automation AppViewX
PDF
Confluent Partner Tech Talk with SVA
PDF
Confluent Partner Tech Talk with QLIK
PDF
Application Modernisation with PKS
PDF
Application Modernisation with PKS
PDF
Application Modernisation through Event-Driven Microservices
PPTX
Real time web with SignalR
PDF
Go Cloud Native with IBM Bluemix Developer Console - GIDS17
PDF
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
PDF
Serverless: Market Overview and Investment Opportunities
PPTX
Architecting Microservices in .Net
PDF
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
PPTX
Think Small To Go Big - Introduction To Microservices
PPTX
apidays LIVE Paris 2021 - APIs - How did we get here and where are we going n...
PDF
Docebo: history of a journey from legacy to serverless
PPTX
Data stream processing and micro service architecture
The Effect of Microservices on API Design
Microservices, Containers, Kubernetes, Kafka, Kanban
Microservices Docker Kubernetes Istio Kanban DevOps SRE
Acme Freight: Developing Microservices and APIs on Bluemix
Webinar unlock the power of adc management and automation AppViewX
Confluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with QLIK
Application Modernisation with PKS
Application Modernisation with PKS
Application Modernisation through Event-Driven Microservices
Real time web with SignalR
Go Cloud Native with IBM Bluemix Developer Console - GIDS17
apidays Singapore 2023 - Beyond REST, Claudio Tag, IBM
Serverless: Market Overview and Investment Opportunities
Architecting Microservices in .Net
APIDays 2018 - APIOps & Microservices - What is MICRO by the Way ?
Think Small To Go Big - Introduction To Microservices
apidays LIVE Paris 2021 - APIs - How did we get here and where are we going n...
Docebo: history of a journey from legacy to serverless
Data stream processing and micro service architecture

More from SmartBear (20)

PPTX
Enforcing Your Organization's API Design Standards with SwaggerHub
PPTX
Introducing OpenAPI Version 3.1
PPTX
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
PPTX
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
PPTX
How LISI Automotive Accelerated Application Delivery with SwaggerHub
PPTX
Standardising APIs: Powering the Platform Economy in Financial Services
PPTX
Getting Started with API Standardization in SwaggerHub
PPTX
Adopting a Design-First Approach to API Development with SwaggerHub
PPTX
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
PPTX
Effective API Lifecycle Management
PDF
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
PDF
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
PPTX
Artificial intelligence for faster and smarter software testing - Galway Mee...
PDF
Successfully Implementing BDD in an Agile World
PPTX
The Best Kept Secrets of Code Review | SmartBear Webinar
PPTX
How Capital One Scaled API Design to Deliver New Products Faster
PPTX
Testing Without a GUI Using TestComplete
PPTX
Hidden Treasure - TestComplete Script Extensions
PDF
How Bdd Can Save Agile
PPTX
API Automation and TDD to Implement Master Data Survivorship Rules
Enforcing Your Organization's API Design Standards with SwaggerHub
Introducing OpenAPI Version 3.1
IATA Open Air: How API Standardization Enables Innovation in the Airline Indu...
The State of API 2020 Webinar – Exploring Trends, Tools & Takeaways to Drive ...
How LISI Automotive Accelerated Application Delivery with SwaggerHub
Standardising APIs: Powering the Platform Economy in Financial Services
Getting Started with API Standardization in SwaggerHub
Adopting a Design-First Approach to API Development with SwaggerHub
Standardizing APIs Across Your Organization with Swagger and OAS | A SmartBea...
Effective API Lifecycle Management
The API Lifecycle Series: Exploring Design-First and Code-First Approaches to...
The API Lifecycle Series: Evolving API Development and Testing from Open Sour...
Artificial intelligence for faster and smarter software testing - Galway Mee...
Successfully Implementing BDD in an Agile World
The Best Kept Secrets of Code Review | SmartBear Webinar
How Capital One Scaled API Design to Deliver New Products Faster
Testing Without a GUI Using TestComplete
Hidden Treasure - TestComplete Script Extensions
How Bdd Can Save Agile
API Automation and TDD to Implement Master Data Survivorship Rules

Recently uploaded (20)

PDF
OpenTimelineIO Virtual Town Hall - August 2025
PDF
OpenAssetIO Virtual Town Hall - August 2025.pdf
PDF
Canva Desktop App With Crack Free Download 2025?
PPTX
ESDS_SAP Application Cloud Offerings.pptx
PPTX
Independent Consultants’ Biggest Challenges in ERP Projects – and How Apagen ...
PDF
WhatsApp Chatbots The Key to Scalable Customer Support.pdf
PPTX
oracle_ebs_12.2_project_cutoveroutage.pptx
PPTX
FLIGHT TICKET API | API INTEGRATION PLATFORM
PDF
OpenEXR Virtual Town Hall - August 2025
PPTX
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
PPTX
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
PDF
IDM Crack Activation Key 2025 Free Download
PDF
Top AI Tools for Project Managers: My 2025 AI Stack
PPTX
StacksandQueuesCLASS 12 COMPUTER SCIENCE.pptx
PDF
Module 1 - Introduction to Generative AI.pdf
PDF
Mobile App for Guard Tour and Reporting.pdf
PDF
Coding with GPT-5- What’s New in GPT 5 That Benefits Developers.pdf
PPTX
Relevance Tuning with Genetic Algorithms
PPTX
Beige and Black Minimalist Project Deck Presentation (1).pptx
PPTX
Presentation - Summer Internship at Samatrix.io_template_2.pptx
OpenTimelineIO Virtual Town Hall - August 2025
OpenAssetIO Virtual Town Hall - August 2025.pdf
Canva Desktop App With Crack Free Download 2025?
ESDS_SAP Application Cloud Offerings.pptx
Independent Consultants’ Biggest Challenges in ERP Projects – and How Apagen ...
WhatsApp Chatbots The Key to Scalable Customer Support.pdf
oracle_ebs_12.2_project_cutoveroutage.pptx
FLIGHT TICKET API | API INTEGRATION PLATFORM
OpenEXR Virtual Town Hall - August 2025
WJQSJXNAZJVCVSAXJHBZKSJXKJKXJSBHJBJEHHJB
Empowering Asian Contributions: The Rise of Regional User Groups in Open Sour...
IDM Crack Activation Key 2025 Free Download
Top AI Tools for Project Managers: My 2025 AI Stack
StacksandQueuesCLASS 12 COMPUTER SCIENCE.pptx
Module 1 - Introduction to Generative AI.pdf
Mobile App for Guard Tour and Reporting.pdf
Coding with GPT-5- What’s New in GPT 5 That Benefits Developers.pdf
Relevance Tuning with Genetic Algorithms
Beige and Black Minimalist Project Deck Presentation (1).pptx
Presentation - Summer Internship at Samatrix.io_template_2.pptx

Slicing and Dicing with Consequences: The Effect of Microservices on API Design

  • 1. The Effect of Microservices on API Design by Al Tsang @altsang Slicing and Dicing with Consequences
  • 3. About Al 9/25/2017 Express Gateway 3 Wrestled with this technical “alligator” as both practitioner and vendor Founder and CEO of LunchBadger Co-Founder and CTO of StrongLoop (acquired by IBM, 2015) VP of Engineering (Platform, eCommerce) at Shutterfly VP of Engineering at cFares OSS Community Member and Contributor LoopBack Express Gateway
  • 4. Monolith vs. Microservices 9/25/2017 Express Gateway 4 Business requirements change rapidly AND continuously – so the need for shipping updated version of your app are increasing exponentially. A microservice app Continuous updating in parts. A monolithic app All or nothing — a big, giant thing that can’t fit through the shipping door. vs.
  • 5. Microservices: an ideal that’s been out there for a long time Decades of best practices in the modern web era Web-scale experiences (Amazon, Google, Netflix, etc) Cloud native technologies Microservices as individual processes Processes encapsulated in containers Containers orchestrated 9/25/2017 Express Gateway 5
  • 6. Microservices and APIs The natural evolution of microservices are APIs to the “N” client - client traditionally was built by the company, but now can be built by anyone APIs = business leverage and amplification 9/25/2017 Express Gateway 6
  • 8. An Architectural Style, Not a Fixed Blueprint Microservices are the new norm – but also more of an architectural style There are too many ways to slice and dice 9/25/2017 Express Gateway 8
  • 9. Problem #1: Services can be discreetly defined in many ways – Business capability – Domain and subdomains – Model 9/25/2017 Express Gateway 9
  • 10. Problem #2: Deployment units can vary in granularity – How many services per host? – What services per host? 9/25/2017 Express Gateway 10
  • 11. Problem #3: APIs are at another level 9/25/2017 Slicing and Dicing with Consequences 11 Optimal microservices at odds for consumption 2 1 3 customer name Item with info rating 1 2 3 – APIs = engagement – Engagement requires mashups/aggregation – Too big, hard to maintain
  • 12. promotions Customer name1 4 Problem #4: Each Engagement Has Different Permutations 9/25/2017 Slicing and Dicing with Consequences Clients can be unknown and clients can be many – APIs must somehow be dynamic Item + description2 rating3 customer name1 item + descript2 item + descript2 item + descript2 Item + description2 rating3
  • 13. v customer name1 Item + long description 2 imageX personalization Z promotions4 Problem #5: Many Engagements 9/25/2017 Slicing and Dicing with Consequences 13 2 1 3 promotions personalization customer name music Z 1 s 4 + ? = z s 4 x customer1 item + desc2 item + desc2 item + desc2
  • 15. Problem: Services can be discreetly defined in many ways – Business capability – Domain and subdomains – Model Solution Step #1: Start a map – Map your business with entities first and then with operations – Bubble up first class operations – Treat EVERYTHING as a resource 9/25/2017 Express Gateway 15
  • 16. Problem: Deployment units can vary in granularity – How many services per host? – What services per host? Solution Step #2: Continue the map – Look at your past consumption and project your future consumption – Mark your hotspots for deployment granularity AND scale
  • 17. 2 1 3 Solution 9/25/2017 Express Gateway Step #3: CQRS – Aggregate query models (presentation) – Finite command models (actions) Problem: Optimal microservices at odds for consumption – APIs = engagement – Engagement requires mashups/aggregation – Many unknown clients = many engagements promotions personalization customer name music Z 1 s 43 + = All Step #3 problems can be solved with CQRS
  • 19. Means to an End: The API Gateway Pattern Centralized Middleware Public APIs – Authentication – Security – Traffic Control – Ops – Logging – Transformations – Etc API Gateway 9/25/2017 Express Gateway 19 Client Only for internal usage Only for specific partners AWS Lambda, etc
  • 20. Means to an End: The API Gateway Pattern Dynamic Orchestration and Mashup – Optimized endpoints – Request collapsing – And more – GraphQL API Gateway Invoices DB schema Customers DB schema Orders DB schema 9/25/2017 Express Gateway 20 Client
  • 22. Quick Plugs: Express Gateway 9/25/2017 Express Gateway 22 Backed by:
  • 23. Quick Plugs - LunchBadger Build, manage, and deploy your microservices as APIs through one unified experience: – Express Gateway - Management – Express (LoopBack) - Composition – Docker and Kubernetes - Cloud Native Portable Runtime 9/25/2017 Express Gateway 23
  • 24. Join Us! 9/25/2017 Express Gateway 24 Express Gateway www.express-gateway.io github.com/ ExpressGateway/express-gateway @express_gateway facebook.com/ExpressJSGateway Lunchbadger www.lunchbadger.com @lunchbadger facebook.com/LunchBadger