Konwencja URL dla mikroserwisów

0

Cześć

Jestem poczatkujacy w temacie mikroserwisow i chcialbym sie dowiedzien jaka jest konwencja nadawania URL per mikroserwis?.

Przykładowo
Mam do napisania aplikacje do e-learningu

Są dwa mikroserwisy User Management oraz Course Management

Dla mikroserwisu User adresy moga byc np:
GET/users/1
PUT/users/3

Tutaj głownie moj dylemat:

Chcialbym pobrac wszystkie kursy uzytkownika o danym id:

GET /users/3/courses <- czy to nie powinno nalezec do serwisu Course?czy to nie jest złamanie zasady Single Responsibility?

z drugiej strony jak by to nalezalo do mikroserwisu Course

GET /courses/user/3 <- wyglada dziwnie

1
  1. users/id/courses
  2. Gdzie jest tutaj złamanie Single Responsibility? Pobieranie kursów danego użytkownika to dalej jedna odpowiedzialność ;)
1

Dlaczego uważasz, że mikroserwisy są odpowiednie do Twojego projektu? User i Course są mocno połączone z tego co widzę, będziesz miał dużo problemów z komunikacją i wydajnością jak będziesz tak szczegółowo wszystko dzielił a projekt się rozrośnie.

1

czy to nie jest złamanie zasady Single Responsibility?

Routing nie jest kodem źródłowym, stąd ciężko w jego kontekście rozmawiać o zasadach projektowania kodu źródłowego.

To trochę jak gdybyś zapytał czy ulica o nazwie Ciasteczkowa nie łamie zasad SOLID.

wyglada dziwnie

Brzmi na dosyć subiektywną opinię.

Tak czy siak: niezależnie, którą opcję wybierzesz, bądź konsekwentny - tyle wystarczy.

Lektura: https://en.wiktionary.org/wiki/bikeshedding.

1 użytkowników online, w tym zalogowanych: 0, gości: 1