Cześć,
chciałem zapytać jak podchodzicie do budowy mikroserwisów w FastAPI, Jak wygląda u Was architektura całej aplikacji, z jakich libek / dodatków korzystacie? Jak dzielicie aplikacje na serwisy? Rozumiem, ze każdy serwis wdrażacie na fizycznie innym sprzęcie lub przynajmniej oddzielnym VPS / serwerze?
Jak budujecie API Gateway? W postaci reverse proxy? Jakiś NGINX czy coś podobnego?
W FastAPI można użyć takiego grupowania (ale czy to dobre podejście w mikroserwisach??):
from fastapi import FastAPI
from student_mgt import student_main
from faculty_mgt import faculty_main
from library_mgt import library_main
app = FastAPI()
app.mount("/student", student_main.student_app)
app.mount("/faculty", faculty_main.faculty_app)
app.mount("/library", library_main.library_app)
Jak serwujecie pliki z assetami, szczególnie zdjęciami?
Korzystacie z load balancerów?
Czy używacie czystej architektury? Tak/nie i dlaczego? :)
Jak u Was komunikują się serwisy między sobą? gRPC czy inne, starsze rozwiązania?
Jak obsługujecie "wspólną" autoryzację?
Czy korzystacie z jednej DB czy kilku/wielu? Dlaczego?
Jak testujecie całą appkę?
Mam nadzieje, że ktoś się pochwali swoimi doświadczeniami w tym temacie ;)