You are on page 1of 13

API Gateway

Implementing an API Gateway with Ocelot

Initial Proof-of-Concept
05-08-22
Sta je mikroservisna arhitektura?
Arhitektura
> Varijanta arhitekture orjentisana na servise u kojoj
aplikacija sadrzi kolekciju manjih servisa

Osobine
> Izvrsavanje na razlicitim platformama
> Nezavisno razvijeni, testirani I rasporedjeni

Zamenjuje
> Dugotrajne, komplikovane, monolitne sisteme

5 | August 2022
Sta je Gateway API?
Centralno mesto za implementaciju

> Autentifikacije
> Orkestracije
> Metrike

Osobine
> Odvaja servise od korisnika
> Moze sadrzati dodatni sloj za bezbednost
> Razbijanje jednog zahteva u vise
> Usmeravanje do nizvodnih mikroservisa

5 | August 2022
Gateway API ilustracija

5 | August 2022
Gateway
Gateway API API ilustracija
Ilustracija 2

5 | August 2022
Gateway
Zasto nam je API ilustracija
potreban Gateway API?
> Bolja izolacija
> Poboljsana bezbednost
> Metrika performansi
> Smanjena slozenost

5 | August 2022
Gateway
Reverse ProxyAPI ilustracija
I Gateway API

Reverse Proxy
> Serveri iza firewall-a
> Usmerava zahteve od klijenta do odgovarajuceg servera
> Sadrzi nekoliko osnovnih mogucnosti

Gateway API
> Nalazi se izmedju klijenta I skupa mikroservisa
> Pruza mnogo opseznije mogucnosti bezbednosti I
nadgledanja
> Pruza podrsku za orkestraciju, transformaciju I
posredovanje
> Nudi opseznu podrsku za bezbednost transporta

5 | August 2022
Gateway
Uvod API ilustracija
u Ocelot

Ocelot API Gateway


> Lagan
> Skalabilan
> Brz
> Zasnovan na .Net Core
> Specijalno dizajniran za arhitekturu mikroservisa

Funkcije
> Rutiranje
> Kesiranje
> Bezbednost
> Ogranicavanje brzine itd
5 | August 2022
Gateway
Primer API ilustracija
Struktura
> Gateway API
> Read API
> Write API

Preduslovi
> .Net Core 3.1
> Visual Studio 2019

5 | August 2022
Gateway
Ocelot API ilustracija
Rate Limit

Parametri
> Client White List
> Enable Rate Limit
> Http Status Code
> Period Setting
> Period Timespan
> Limit

5 | August 2022
Gateway
Kesiranje API ilustracija
I Auth0

Nuget Paket za kesiranje


> Ocelot.Cache.CacheManager

Auth0 sa Ocelotom
> Lako upravljanje
> Laka, brza, jednostavna implementacija

Prednosti
> Single sign on
> Podrska za razne provajdere
> Podrska za enterprise identity provajdere (Active directory,
LDAP, SAML, custom)
5 | August 2022
Gateway
Zakljucak API ilustracija
Prednosti
> Aplikacije su fleksibilne,
> Skalabilne,
> Visokih performansi
> Podrska za heterogene platforme I tehnologije
> Dodatni security sloj
> Mogucnost postavljanja ogranicenja brzine
> Laksi za odrzavanje
> Laksi I brzi deployment

Mane
> Povecanje kompleksnosti

5 | August 2022
Q&A

5 | August 2022

You might also like