Slide 1

Slide 1 text

Scaling in Three Dimensions A Sunday Story Arnaud LEMAIRE, CTO @ Sunday – Data in Motion 2024

Slide 2

Slide 2 text

Vertical Horizontal Scaling in Two Dimensions

Slide 3

Slide 3 text

Scaling in Three Dimensions Complexity Load People/Team

Slide 4

Slide 4 text

Scaling in Three Dimensions A Monolith Microservice Ready A Reactive Architecture Contrat Based Team

Slide 5

Slide 5 text

A Monolith Micro- service Ready Scaling in Complexity

Slide 6

Slide 6 text

Hypergrowth • Up to 10 new onboarding per week • A new system to be developed in 8 weeks • Dozen of new restaurants every week • …

Slide 7

Slide 7 text

A monolith with seams Sunday

Slide 8

Slide 8 text

A monolith with seams Billing vPOS Payment

Slide 9

Slide 9 text

A monolith with seams Billing vPOS Payment Local Queue

Slide 10

Slide 10 text

A monolith with two mains Billing vPOS Payment Network Queue Billing vPOS Payment

Slide 11

Slide 11 text

A Monolith Micro-Service Ready Billing Payment Network Queue vPOS

Slide 12

Slide 12 text

Contract Based Team Scaling The Org

Slide 13

Slide 13 text

Payment Messages Events gRPC REST/JSON Open API Kafka Sunday Protocols (protobuff)

Slide 14

Slide 14 text

Payment Messages Events gRPC REST/JSON Open API Kafka Data Ingestion Federated Queries

Slide 15

Slide 15 text

Payment Messages Events gRPC REST/JSON Open API Kafka Data Ingestion Federated Queries Observability BI Datadog Metabase

Slide 16

Slide 16 text

Payment Messages Events gRPC REST/JSON Open API Kafka Data Ingestion Federated Queries Observability BI Datadog Metabase Internal Service App (native, web) Merchant Analytics & BI The Team

Slide 17

Slide 17 text

A Reactive Architecture Scaling in Load

Slide 18

Slide 18 text

A Dangerous Mix 06 08 10 12 14 16 18 20 22 00 02 04

Slide 19

Slide 19 text

Classic Request Response Flow App

Slide 20

Slide 20 text

Reactive Flow App

Slide 21

Slide 21 text

Reactive Flow Subscription vPOS Projector

Slide 22

Slide 22 text

Reactive Flow Subscription vPOS Projector

Slide 23

Slide 23 text

Merci