Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
lokalne buforowanie danych jest techniką przyspieszającą dostęp sieciowy do plików danych. Obejmuje buforowanie danych na klientach, a nie na serwerach, gdy jest to możliwe.
Efektem buforowania lokalnego jest możliwość połączenia wielu operacji zapisu w tym samym regionie pliku w jednej operacji zapisu w sieci. Buforowanie lokalne zmniejsza ruch sieciowy, ponieważ dane są zapisywane raz. Takie buforowanie poprawia widoczny czas odpowiedzi aplikacji, ponieważ aplikacje nie czekają na wysyłanie danych przez sieć do serwera.
Buforowanie lokalne danych może sprawiać wrażenie przyspieszenia działania poprzez wyprzedzające odczyty. Prostym przykładem jest aplikacja, która uzyskuje dostęp do danych sekwencyjnie, na przykład preprocesor kompilatora. W takich przypadkach warstwa sieciowa systemu operacyjnego odczytuje dane w sieci, zanim aplikacja zażąda danych. Najlepiej, aby sieć dostarczała dane przed żądaniem aplikacji z systemu plików, co powoduje niemal natychmiastową odpowiedź. W praktyce rzadko się to zdarza, ale często przetwarzanie wyprzedzające przyspiesza działanie aplikacji poprzez przewidywanie następnego żądania.
Buforowanie lokalne może również pomóc zmniejszyć ruch sieciowy, odczytując część pliku w sieci raz, a następnie utrzymując go w lokalnej pamięci podręcznej. Kolejne operacje odczytu tej części przez aplikację są wykonywane z lokalnej pamięci podręcznej.
Jednym z typów aplikacji, które mogą korzystać z lokalnego buforowania, są pliki wsadowe. Procesory poleceń odczytują i wykonują plik wsadowy linia po linii. Dla każdego wiersza procesor poleceń otwiera plik, wyszukuje na początku wiersza, odczytuje tyle, ile potrzebuje, zamyka plik, a następnie wykonuje wiersz. Każdy wiersz powoduje duży ruch sieciowy. Ruch sieciowy można znacznie zmniejszyć, buforując cały plik wsadowy na kliencie.
Buforowanie lokalne pomaga również w przypadku innego problemu związanego z sieciami, zwłaszcza sieci, które wykonują pracę za pośrednictwem modemów i innych cienkich rur: powolny czas odpowiedzi. Użytkownicy nie chcą czekać, gdy dane są pobierane przez sieć, modyfikowane, a następnie zapisywane z powrotem. Przy buforowaniu odczytu z wyprzedzeniem i zapisu często wydaje się, że te funkcje działają znacznie szybciej, niż ma to miejsce w rzeczywistości.
Zagrożeniem dla lokalnego buforowania jest to, że zapisane dane mają tylko tyle integralności, jak sam klient, o ile dane są buforowane na kliencie. Ogólnie rzecz biorąc, lokalnie buforowane dane powinny być opróżniane na serwer tak szybko, jak to możliwe. W przypadku nowoczesnych systemów operacyjnych i obsługi sprzętu, takich jak nieinterrupcyjne zasilacze, zmniejsza się ryzyko utraty lokalnie buforowanych danych. Jednak nadal istnieje ryzyko i należy rozważyć zarówno kompromis między integralnością danych a widoczną szybkością odpowiedzi oraz kompromisem między integralnością danych a ograniczonym ruchem sieciowym.