Ten artykuł jest lustrzanym artykułem tłumaczenia maszynowego, kliknij tutaj, aby przejść do oryginalnego artykułu.

Widok: 2246|Odpowiedź: 0

[Web] Bufor Zasobów Internetowych (CDN) Nginx

[Skopiuj link]
Opublikowano 17.07.2024 22:10:31 | | | |
Zanim przejdziemy do buforowania webowego, porozmawiajmy o CDN – sieci dostarczania treści (CDN) to rozproszona sieć zbudowana i pokryta na sieci nośnikowej, składającej się z flot serwerów węzłów brzegowych na całym świecie. CDN może dzielić presję na serwer źródłowy, unikać przeciążenia sieci, zapewniać dystrybucję treści stron internetowych w różnych regionach i scenariuszach oraz usprawniać dostęp do zasobów. CDN buforuje zasoby serwera źródłowego do węzłów akceleracyjnych IDC na całym świecie, tak aby użytkownicy końcowi, gdy żądają dostępu do zasobów serwera źródłowego i ich uzyskali, mogli uzyskać zasoby buforowane na pobliskich węzłach CDN, poprawić szybkość dostępu do zasobów i podzielić się presją na serwery źródłowe.

Jak pokazano na poniższym rysunku:



Mówiąc prosto, gdy użytkownicy uzyskują dostęp do niektórych zasobów statycznych, nie pobierają ich z serwera źródłowego po użyciu CDN, lecz znajdą usługę CDN najbliższą aktualnemu użytkownikowi poprzez obliczenia i dane zwrotne.

Wartości buforowania sieci to usługa pomiędzy użytkownikiem a serwerem źródłowym, a Nginx zapewnia natywne możliwości buforowania webu. Inne to Varnish, Squid i Cachewall, które są proxy do buforowania stron internetowych (niektóre z nich nie tylko oferują buforowanie webowe).

O dokumentacji konfiguracji pamięci podręcznej Nginx:Logowanie do linku jest widoczne.

Po pierwsze, gdy po raz pierwszy uzyskujemy dostęp do zasobu przez usługę buforowania, stan pamięci podręcznej jestTĘSKNIĆ, poprosi serwer początkowy o pobranie go, jak pokazano na poniższym rysunku:



Gdy po raz drugi uzyskujemy dostęp do zasobu, okaże się, że zasób został zbuforowany, a stan jestUDERZYĆ, jak pokazano na poniższym rysunku:



Główne parametry konfiguracyjne Nginx są następujące:

Główne parametry:

proxy_cache_path/data/nginx/cache levels=1:2 keys_zone=my_cache:10m max_size=10g inactive=180d use_temp_path=off;

●path: Obowiązkowy parametr określający ścieżkę przechowywania plików cacheowanych.
●levels: Definiuje hierarchię katalogu cache. Każdą warstwę można przedstawić jako 1 (do 16 wyborów, 0-f) lub 2 (do 256 wyborów, 00-ff), oddzielone przez: w środku.
proxy_cache_path /data/nginx/cache;  Oznacza to, że wszystkie pamięci podręczne mają tylko jeden katalog, taki jak /data/nginx/cache/d7b6e5978e3f042f52e875005925e51b
proxy_cache_path poziomy /data/nginx/cache=1:2;  Oznacza to, że pamięć podręczna jest katalogiem drugiego poziomu (z 16*256=4096 katalogami), takimi jak /data/nginx/cache/b/51/d7b6e5978e3f042f52e875005925e51b
● keys_zone: Parametr obowiązkowy, definiujący nazwę i rozmiar współdzielonej przestrzeni pamięci, która służy do przechowywania metadanych elementu pamięci podręcznej (wszystkich aktywnych kluczy i informacji związanych z danymi w pamięci podręcznej), aby nginx mógł szybko określić, czy żądanie trafiło w pamięć podręczną lub ją nie trafiło, 1m może przechowywać 8000 kluczy, 10m 80000 kluczy, 10m 80000 kluczy.
●nieaktywny: Usuwa pliki pamięci podręcznej, do których nie uzyskano dostępu w określonym czasie, domyślnie przez 10 minut.
●max_size: Górna granica pamięci podręcznej jest ustalana, a jeśli nie jest określona, cała przestrzeń na dysku zostanie maksymalnie zajęta.
● use_temp_path: Umieść pliki tymczasowe bezpośrednio w katalogu pamięci podręcznej.


proxy_cachemy_cache;      #指定用于页面缓存的共享内存 nazwa strefy jest zdefiniowana proxy_cache_path dyrektywą
proxy_cache_min_uses1;   ## określa próg buforowania, liczbę razy jest zażądanie buforowane i nie buforuje żądań o niskiej częstotliwości, aby uniknąć marnotrawstwa.
proxy_cache_valid200 metrów 3 m;  #为不同的响应状态码设置不同的缓存时间 jest to żądanie z kodem statusu pamięci podręcznej 200 i czasem trwania pamięci podręcznej 3 minuty
proxy_cache_key$request_uri; #指定缓存文件的key为请求的URI
add_headerNginx-Cache-Status $upstream_cache_status;  #把缓存状态设置为头部信息, odpowiedz klientowi
proxy_passhttp://webservers;  #设置代理转发的后端服务器的协议和地址

Użyj proxy caching Nginx, aby ignorować ciągi zapytań

(Koniec)




Poprzedni:Użyj narzędzia dotnet-ef, aby wygenerować skrypt rollback
Następny:Użyj curl, aby sprawdzić wsparcie HTTP/3 na stronie testowej
Zrzeczenie się:
Całe oprogramowanie, materiały programistyczne lub artykuły publikowane przez Code Farmer Network służą wyłącznie celom edukacyjnym i badawczym; Powyższe treści nie mogą być wykorzystywane do celów komercyjnych ani nielegalnych, w przeciwnym razie użytkownicy ponoszą wszelkie konsekwencje. Informacje na tej stronie pochodzą z Internetu, a spory dotyczące praw autorskich nie mają z nią nic wspólnego. Musisz całkowicie usunąć powyższą zawartość z komputera w ciągu 24 godzin od pobrania. Jeśli spodoba Ci się program, wspieraj oryginalne oprogramowanie, kup rejestrację i korzystaj z lepszych, autentycznych usług. W przypadku naruszenia praw prosimy o kontakt mailowy.

Mail To:help@itsvse.com