Cześć,
Na studiach mam zbudować proste rest api pod aplikację desktopową oraz mobilną.
Moje pytanie brzmi: Czy lepiej pobrać wszystkie dane w jsonie i potem filtrować LINQ czy lepiej pobierać pojedynczo element za pomocą resta? Co w przypadku gdy mamy do pobrania 100.000 elementów? Lepszą praktyką jest pobranie wszystkiego i potem LINQ czy filtrować za pomocą endpointów?
Co będzie wydajniesze?
- Rejestracja: dni
- Ostatnio: dni
- Postów: 32
0
- Rejestracja: dni
- Ostatnio: dni
- Postów: 6610
3
napisać metodę, która przyjmie filtr i zwróci przefiltrowane dane
- Rejestracja: dni
- Ostatnio: dni
- Postów: 58
4
Oczywiście, że endpoint który filtruje dane. Po co wysyłać zbędne dane do klienta, zwłaszcza jeśli nim jest klient z aplikacji mobilnej.
Już pomijam zapytania do bazy..
- Rejestracja: dni
- Ostatnio: dni
4
Sunnyline2 napisał(a):
Po co wysyłać zbędne dane do klienta
I najlepiej jak jeszcze nie beda te dane do tego klienta nalezec ;]
- Rejestracja: dni
- Ostatnio: dni
- Postów: 32
0
Tzn wszystko by i tak będzie filtrowane na moim reście i dopiero będzie leciało do apki mobilnej czy klienckiej po stronie Angulara
- Rejestracja: dni
- Ostatnio: dni
- Lokalizacja: Wrocław
3
- Dane filtrujemy jak najbliżej źródła.
- Jeśli potrzeba więcej danych na raz, to wysłanie iluś na raz, będzie zawsze szybsze niż wysyłanie pojedynczo.
- Ale też bez przesady, zazwyczaj lepiej dzielić na pakiety sensownych rozmiarów (tzn. raczej 50-100 niż tysiąc).