Czytam hibernację i natrafiłem na takie stwierdzenia, jak: „Połączenia JDBC otwarte dla wielu żądań nie są dobrą rzeczą, ponieważ są drogim zasobem”.
Co rozumie się przez kosztowne zasoby?
Edycja: Dodaję komentarz nieznanego użytkownika jako komentarz poniżej.
Jeśli nawiązywanie połączenia z bazą danych jest drogie, dlaczego nie skorzystać z tej samej opcji bez buforowania, zamiast zamykać i otwierać za każdym razem?
language-agnostic
Vinoth Kumar CM
źródło
źródło
Odpowiedzi:
Drogim zasobem jest taki, który:
Każdy z drogich zasobów może powodować problemy ze skalowalnością . Krótko mówiąc, nie możesz mieć zbyt wielu tych kosztownych operacji jednocześnie, lub nie będziesz w stanie wystarczająco szybko odpowiedzieć użytkownikom.
źródło
Może to być różne rzeczy zależne od konkretnego zasobu. Więc możesz mieć następujące:
i tak dalej.
Inne rzeczy, które mogą uczynić coś kosztownym, mogą być, jeśli wymaga on dostępu do dysku twardego lub sieci podczas pracy itp.
źródło
Drogie należy poprzedzić przedrostkiem „obliczeniowo”. Koszt obliczeniowy odnosi się do ilości czasu lub zasobów (procesor, pamięć, dysk, pasmo sieciowe) wymaganych do wykonania operacji, algorytmu lub programu.
źródło
Koszt połączeń z bazą danych wynika z wielu czynników.
To powiedziawszy, musisz utrzymywać połączenie (lub przynajmniej transakcję) otwarte wystarczająco długo, aby upewnić się, że transakcja pomyślnie przeszła test ACID . (Atomic Consistent Isolated Durable)
źródło