Post on 18-Mar-2018
Phil Calçado - @pcalcado philcalcado.com
Some thoughts on evolving
Edge Architectures
Phil Calçado - @pcalcado philcalcado.com
Some thoughts on evolving
Edge Architectures
(disclaimer)
what’s this 'edge' anyway?
MobileWeb
Application Database
Internet
Application
Client-side
What about
• Authorisation • Authentication • Rate-limiting • Geo-location • Session handling
Application
Edge
Client-side
the 1st few iterations
from monoliths to microservices is a well-documented process
Public API
MobileWeb
Application Database
Internet
Application
Database
Mobile
Web
when if you hit a wall
start off by making sure no new code goes in
the monolith
Application
Database
Mobile
Web
Service A
Service C
Service B
then strangle the hell out of old stuff
Service A
Service BPublic API
Web
Mobile
Application
Database
when if you have edge performance
problems
Service A
Service C
Service BPublic API
Web
Mobile
GET /tracks/1234.json GET /tracks/1234/related.json GET /users/86762.json GET /users/me.json
Mobile
Service A
Service C
Service B
Mobile BFF
WebWeb BFF
GET /user-profile/123.json
be careful about duplicated logic
Mobile
Service A
Service C
Service B
Mobile BFF
WebWeb BFFUser Profile
Service
but if nothing else: do not start with an over-complicated
architecture!
?