20170329 - api gateway

41
2017 API Centric What’s the use of an API Gateway?

Upload: inovia

Post on 08-Apr-2017

189 views

Category:

Technology


1 download

TRANSCRIPT

Page 1: 20170329 - Api Gateway

2017

API CentricWhat’s the use of an API Gateway?

Page 2: 20170329 - Api Gateway

2017

Who Am I ?

David Level - Inovia

Page 3: 20170329 - Api Gateway

2017

❖ Stateless application

❖ Microservices / Multiple apis

❖ API Gateway

❖ Strangler Pattern

❖ Existing solutions

Page 4: 20170329 - Api Gateway

2017

“In information technology and computer science, a system is called stateful if the way in which it may interact internally or with its environment depends on the condition it is in at a given instant in time.” - Wikipedia

Page 5: 20170329 - Api Gateway

2017

Why would you want a stateless app ?

Page 6: 20170329 - Api Gateway

2017

Easier to test

Page 7: 20170329 - Api Gateway

2017

Scalable

Page 8: 20170329 - Api Gateway

2017

Easier to debug

Page 9: 20170329 - Api Gateway

2017

Split our monolith!

Page 10: 20170329 - Api Gateway

2017

Client A

Client C

Client B

Payment service

Booking service

Search service

Archive service

REST API

REST API

REST API

REST API

Page 11: 20170329 - Api Gateway

2017

Isolated by domain

Page 12: 20170329 - Api Gateway

2017

Easier to deploy

Page 13: 20170329 - Api Gateway

2017

Great I’m done with microservices.

See you next time!

Page 14: 20170329 - Api Gateway

2017

STOP!

Page 15: 20170329 - Api Gateway

2017

Does it helps me to handle...

Page 16: 20170329 - Api Gateway

2017

Chattiness?

Page 17: 20170329 - Api Gateway

2017

Authentication process?

Page 18: 20170329 - Api Gateway

2017

Call tracing?

Page 19: 20170329 - Api Gateway

2017

Quota?

Page 20: 20170329 - Api Gateway

2017

Page 21: 20170329 - Api Gateway

2017

Hopefully the API Gatewaypattern exists!

Page 22: 20170329 - Api Gateway

2017

Client A

Payment service

Booking service

Search service

Archive service

REST API

REST API

REST API

REST API

APIGateway

Page 23: 20170329 - Api Gateway

2017

What is this purple thing?

Page 24: 20170329 - Api Gateway

2017

Authentication

Quota

Logging

Correlation ID

API Gateway

Page 25: 20170329 - Api Gateway

2017

This pattern helps with...

Page 26: 20170329 - Api Gateway

2017

Managing a single entry point

Page 27: 20170329 - Api Gateway

2017

Track calls through correlation IDs

Page 28: 20170329 - Api Gateway

2017

Manage quota for all apis

Page 29: 20170329 - Api Gateway

2017

Stop failing calls through circuit breaker

Page 30: 20170329 - Api Gateway

2017

Should I develop my own one?

Page 31: 20170329 - Api Gateway

2017

You can but let’s see existing solutions

Page 32: 20170329 - Api Gateway

2017

Konghttps://getkong.org/

Page 33: 20170329 - Api Gateway

2017

Tykhttps://tyk.io/

Page 34: 20170329 - Api Gateway

2017

Netflix Zuul https://github.com/Netflix/zuul/

Page 35: 20170329 - Api Gateway

2017

Amazon API Gateway https://aws.amazon.com/fr/api-gateway/

Page 36: 20170329 - Api Gateway

2017

Hum sounds cool…...but what about my monolith?

Page 37: 20170329 - Api Gateway

2017

Strangler pattern

Page 38: 20170329 - Api Gateway

2017

Client AAPI

GatewayMonolithStateless

Page 39: 20170329 - Api Gateway

2017

Transition to microservice

Page 40: 20170329 - Api Gateway

2017

Capture and intercept call to the old system

Page 41: 20170329 - Api Gateway

2017

https://inovia.fr - @inoviateamDavid Level - @dlevel57