Mam aplikację internetową, która używa Guids jako PK w DB dla obiektu Employee i obiektu Association.Przesyłanie wielu obiektów z identyfikatorami GU IDID do klienta
Jedna strona w mojej aplikacji zwraca dużą ilość danych pokazujących wszystkie powiązania, do których mogą należeć wszyscy pracownicy.
Więc teraz, jestem wysyłania do klienta zasadniczo kilka obiektów, które wyglądają jak:
{assocation_id: guid, employees: [guid1, guid2, ..., guidN]}
Okazuje się, że wielu pracowników należeć do wielu stowarzyszeń, więc przesyłam w dół ten sam GUID dla tych pracowników w kółko w tych różnych obiektach. Na przykład możliwe jest, że w niektórych przypadkach wysyłam 30 000 całkowitych komunikatów do wszystkich skojarzeń, z których jest tylko 500 unikatowych pracowników.
zastanawiam się, czy warto mnie budowanie jakiegoś indeksu odnośników, że ja również wysłać do klienta jak
{ 1: Guid1, 2: Guid2 ... }
i zastąpienie wszystkich GUID w obiektach mi zesłać z tymi wskazówki,
lub po prostu gzipping odpowiedź będzie kompresować na tyle, że ten dodatkowy wysiłek nie jest tego warta?
Uwaga: proszę, nie dajcie się złapać w szczegóły, czy powinienem wysłać 30 000 danych, czy nie - to nie jest mój wybór i nic nie mogę z tym zrobić (i ja też mogę nie zmieniają Guida na ints lub longs w DB).
Dlaczego po prostu nie użyjesz metody Linq Distinct()? Lub użyj DISTINCT w zapytaniu dbase? –
Dlaczego zamiast tego nie wysłać listy * stowarzyszenia * na * pracowników *? – ydroneaud
Więcej powodów, dla których przepustowość odpowiedzi, chciałbym oddzielić zagnieżdżone zasoby dla tego przypadku, jak sugerujesz. Możesz użyć osobnych żądań ajax dla nich lub leniwych załadować je na żądanie. – aceofspades