Zarządzanie pamięcią podręczną dla aplikacji sieciowych

W tym temacie i powiązanych podtopach opisano buforowanie zasobów uzyskanych przy użyciu WebClientklas , WebRequest, HttpWebRequesti FtpWebRequest .

Pamięć podręczna zapewnia tymczasowy magazyn zasobów, które zostały żądane przez aplikację. Jeśli aplikacja żąda tego samego zasobu więcej niż raz, zasób może zostać zwrócony z pamięci podręcznej, unikając narzutu ponownego żądania z serwera. Buforowanie może zwiększyć wydajność aplikacji, skracając czas wymagany do uzyskania żądanego zasobu. Buforowanie może również zmniejszyć ruch sieciowy, zmniejszając liczbę podróży na serwer. Buforowanie zwiększa wydajność, ale zwiększa ryzyko, że zasób zwrócony do aplikacji jest nieaktualny, co oznacza, że nie jest identyczny z zasobem, który zostałby wysłany przez serwer, jeśli buforowanie nie było używane.

Buforowanie mogą zezwalać nieautoryzowanym użytkownikom lub procesom na odczytywanie poufnych danych. Uwierzytelniona odpowiedź, która jest buforowana, może zostać pobrana z pamięci podręcznej bez dodatkowej autoryzacji. Jeśli buforowanie jest włączone, zmień wartość na CachePolicy lub BypassCacheNoCacheNoStore wyłącz buforowanie dla tego żądania.

Ze względu na obawy dotyczące zabezpieczeń buforowanie nie jest zalecane w scenariuszach warstwy środkowej.

W tej sekcji

Zasady pamięci podręcznej
Wyjaśnia, czym są zasady pamięci podręcznej i jak je zdefiniować.

Zasady pamięci podręcznej oparte na lokalizacji
Definiuje każdy typ zasad pamięci podręcznej opartej na lokalizacji dostępnych dla zasobów protokołu http i https.

Zasady pamięci podręcznej oparte na czasie
Opisuje kryteria, których można użyć do dostosowywania zasad pamięci podręcznej opartej na czasie.

Konfigurowanie pamięci podręcznej w aplikacjach sieciowych
Opisuje sposób programowego tworzenia zasad pamięci podręcznej i żądań korzystających z buforowania.

Odwołanie

System.Net.Cache
Definiuje typy i wyliczenia używane do definiowania zasad pamięci podręcznej dla zasobów uzyskanych przy użyciu WebRequestklas , HttpWebRequesti FtpWebRequest .