Hej
Załóżmy, że mamy api z edpointami:
/users/{username}/orders - zwracający listę zamówień dla danego użytkownika,
/orders/{orderID}/pruducts - zwracający produkty dla danego zamówienie
I teraz chcemy dostać wszystkie produkty które kupił dany użytkownik, najprościej byłoby po prostu strzelić pod enpoint /users a potem dla kazdego zamówienia strzelić pod /orders, ale tu powstaje problem N+1, gdy sekwencyjnie wykonujemy zapytania o produkty dla każdego zamówienia po kolei, a przeciaż te zamówienia nie są ze sobą związane, można te zapytania zrównoleglić, tylko jak? Użyć executor service z liczba watkow równą liczbie zamówień, coś podziałać z CompletableFuture?