Slide 1

Slide 1 text

Digital Platforms, Taking APIs to production, Microservices patterns June, 2023

Slide 2

Slide 2 text

No content

Slide 3

Slide 3 text

Hello! Kanchana Wickremasinghe VP & GM for Choreo Business Unit at WSO2 [email protected]

Slide 4

Slide 4 text

● What are Digital Platforms? ● Taking APIs to production ● Microservices patterns ● Putting it all together ⦿ How they compliment each other ● Q & A Talking points 3

Slide 5

Slide 5 text

Digital Platforms

Slide 6

Slide 6 text

Platform 5 “A platform is a support structure that increases the effectiveness of a community.” - Dave Grey Source: The Connected Company by Dave Gray, Thomas Vander Wal

Slide 7

Slide 7 text

6 Picture credit: https://www.freepik.com/ Expecting a DIGITAL DOUBLE Digital Experience REAL-TIME PERSONALIZED GEO-SENSITIVE PREDICTIVE

Slide 8

Slide 8 text

Business Enablement Core components of a Digital Platform 7 Digital Platform Foundation Services Marketplace Development Operations Governance Digital Core Components APIs Services Integrations Identities Cloud-native Infrastructure Multi Experience (MX) Web Mobile IoT API Products Digital Core APIs Services Integrations Identities

Slide 9

Slide 9 text

● By utilizing various services of cloud providers e.g: AWS, Azure, GCP etc ○ Source repositories ○ CI/CD ○ Container registries ○ API Gateways ○ …. ● By utilizing Open Source tools for similar services ○ Git ○ ArgoCD, Harbor registry ○ WSO2 API, Kong, Tyk ○ …. What are some of these Digital Platforms? 8 Build with a toolbox Buy (Hosted)

Slide 10

Slide 10 text

Taking APIs to production

Slide 11

Slide 11 text

Most of the time We think of getting an API to the production means: ● Source and API Management (APIM) software ● Configure the APIM ● Secure the API ● Test the API ● Deploy to production 10

Slide 12

Slide 12 text

Lifecycle of an API to Production 11 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance

Slide 13

Slide 13 text

Microservices patterns

Slide 14

Slide 14 text

What are Microservices? 13 Microservices - also known as the microservice architecture - is an architectural style that structures an application as a collection of services that are: ● Independently deployable ● Loosely coupled ● Organized around business capabilities ● Owned by a small team Credits: microservices.io

Slide 15

Slide 15 text

Microservices Patterns ● Decomposition: ⦿ domain, sub-domains, strangler ● Integration: ⦿ API Gateway, Aggregator, UI Composition ● Database ⦿ Database per Service, Shared, Saga, CQRS ● Observability ⦿ Tracing, Logging, Healthchecks ● Cross-cutting ⦿ External configurations, Service discovery, Blue/green and Canary style deployments, Circuit breakers 14

Slide 16

Slide 16 text

API Gateway 15

Slide 17

Slide 17 text

Database per service 16

Slide 18

Slide 18 text

Saga pattern 17

Slide 19

Slide 19 text

Putting it all together

Slide 20

Slide 20 text

19 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ?

Slide 21

Slide 21 text

20 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API

Slide 22

Slide 22 text

21 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Selecting either to build a platform or buy an existing platform

Slide 23

Slide 23 text

22 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Setup your environment to develop, build and test Selecting either to build a platform or buy an existing platform

Slide 24

Slide 24 text

23 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Setup your environment to develop, build and test Start developing your API Selecting either to build a platform or buy an existing platform

Slide 25

Slide 25 text

24 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Setup your environment to develop, build and test Start developing your API Test your API Selecting either to build a platform or buy an existing platform

Slide 26

Slide 26 text

25 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Setup your environment to develop, build and test Start developing your API Test your API Configure and deploy your API to production Selecting either to build a platform or buy an existing platform

Slide 27

Slide 27 text

26 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance What’s it that this API will deliver ? Define the architecture and design your API Setup your environment to develop, build and test Start developing your API Test your API Configure and deploy your API to production Operate and Run your API in production Selecting either to build a platform or buy an existing platform

Slide 28

Slide 28 text

How do they all fit together? 27 Requirements Architecture & design Technology evaluation & prototyping Environment setup & pipeline Development Testing Deployment, Configuration & CI/CD etc Observe, maintenance Microservices Digital Platform (built or bought) API to Production is the process you follow Emerging

Slide 29

Slide 29 text

Question Time!