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

Widok: 5163|Odpowiedź: 5

[.NET Core] ASP.NET Core (18) Dostosowanie prostej pamięci wyjściowej OutputCache

[Skopiuj link]
Opublikowano 2023-5-7 21:42:06 | | | |
Wymagania: Mieć go w .NET FrameworkAtrybut OutputCacheAttributeFunkcja ta (używana do oznaczania metody działania buforowania wyjścia) przechowuje często odwiedzane i rzadko zmieniające się dane w pamięci i bezpośrednio generuje treść odpowiedzi, co może poprawić wydajność współbieżności strony internetowej oraz zmniejszyć presję na serwer i bazę danych. Ta funkcja została dodana dopiero w wersji .NET 7.





ASP.NET Wyjściowe oprogramowanie pośredniczące cache w rdzeniu:Logowanie do linku jest widoczne.

Zasada buforowania wyjściowego: każde żądanie najpierw określa, czy istnieje w pamięci podręcznej, jeśli nie istnieje, zapisuje treść odpowiedzi do pamięci podręcznej, a następnie generuje odpowiedź; jeśli pamięć podręczna istnieje, odpowiedź wyjściowa jest bezpośrednio uzyskiwana z niej na wyjściu. Przez pamięć podręczną wyjściowąOgraniczenie zapytań do bazy danych, ograniczenie niektórych operacji logicznych oraz pobieranie bezpośrednio z pamięci podręcznej poprawia zarówno współbieżność, jak i responsywność

Ponieważ w .NET 6 nie ma funkcji OutputCacheAttribute (Atrybut OutputCacheAtribut), możemy sami zaimplementować prostą pamięć podręczną wyjściową.


W przypadku braku pamięci podręcznej wyjściowej, wyniki testów obciążeniowych są następujące (Baza danych projektu jest połączona z serwerem w Hongkongu):



Wyniki testów obciążeniowych: dozwolone tylko 10 współbieżności na sekundę (wolny transfer w bazie danych).

Aby spróbować dodać pamięć podręczną wyjściową, najpierw stwórz nową funkcję Atrybutu OutputCacheAttribute – kod wygląda następująco:

Stwórz nowe oprogramowanie pośredniczące OutputCacheMiddleware, aby zablokować żądanie, a kod wygląda następująco:

Dodaj middleware UseOutputCacheExtensions do Program.cs z następującym kodem:

Na koniec dodaj tę funkcję do metody kontrolera za pomocą następującego kodu:

Ponownie, dzięki testom ciśnieniowym, można to osiągnąćPonad 10 000 współbieżności na sekundę, jak pokazano na poniższym rysunku:

cassowary.exe bieg -u http://localhost:5222/zh-cn -c 50 -n 100000



Narzędzie Cassowary do testów obciążeniowych HTTP
https://www.itsvse.com/thread-10557-1-1.html
(Koniec)




Poprzedni:[Skręć]. NET 8 Nowo dodane typy o wysokiej wydajności
Następny:Wykorzystywane są kanały kolejki wysokiej wydajności .NET Core
 Ziemianin| Opublikowano 2023-5-7 21:50:45 |

recenzja

ASP.NET Core (17) integruje analizę wydajności aplikacji MiniProfile
https://www.itsvse.com/thread-10571-1-1.html

ASP.NET Rdzeń (16) Zależny od wstrzykiwania dynamicznych usług rejestracyjnych
https://www.itsvse.com/thread-10560-1-1.html

ASP.NET Core (XV) używa HttpClient do wysyłania żądań HTTP
https://www.itsvse.com/thread-10311-1-1.html

ASP.NET Core (czternaście) opiera się na captcha obrazu SkiaSharp
https://www.itsvse.com/thread-10287-1-1.html

ASP.NET Core (XIII), aby określić, czy jest to żądanie Ajax, czy nie
https://www.itsvse.com/thread-10284-1-1.html

ASP.NET Core (dwanaście) front-end JS, bundling CSS i kompresja
https://www.itsvse.com/thread-10282-1-1.html

ASP.NET Core (XI) trasa końcowa dodaje oprogramowanie pośrednicze do wyświetlania wszystkich usług DI
https://www.itsvse.com/thread-10269-1-1.html

ASP.NET Szczegółowe wyjaśnienie priorytetów konfiguracji w Core(10).
https://www.itsvse.com/thread-10265-1-1.html

ASP.NET Szczegółowe wyjaśnienie middleware Middleware w Core (9).
https://www.itsvse.com/thread-9647-1-1.html

ASP.NET Szczegółowe wyjaśnienie Core Middleware
https://www.itsvse.com/thread-8126-1-1.html

ASP.NET domyślnych parametrów interfejsu Swagger w Core(8).
https://www.itsvse.com/thread-9640-1-1.html

ASP.NET Rdzeń (7) Dogłębna analiza kodu źródłowego frameworka
https://www.itsvse.com/thread-9601-1-1.html

ASP.NET Core (VI) DI ręcznie uzyskuje metodę wstrzykiwania obiektów
https://www.itsvse.com/thread-9595-1-1.html

ASP.NET Core (pięć) opiera się na rozproszonych transakcjach CAP
https://www.itsvse.com/thread-9593-1-1.html

ASP.NET Filtr Core(4) zunifikowany walidacja modelu modelu ModelState
https://www.itsvse.com/thread-9589-1-1.html

ASP.NET Rdzeń (iii) Dynamicznie twórz instancje za pomocą ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Rdzeń (2) Restart aplikacji za pomocą kodu
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) korzysta z buforowania Redis
https://www.itsvse.com/thread-9393-1-1.html
 Ziemianin| Opublikowano 7.05.2023 21:53:14 |
O asp.net ustawieniu wyłączania czyszczenia pamięci podręcznej OutputCache
https://www.itsvse.com/thread-5843-1-1.html

ASP.NET Konfiguracja parametrów OutputCache cache web.config
https://www.itsvse.com/thread-4917-1-1.html

mvc cache poprawne użycie właściwości OutputCache VaryByParam
https://www.itsvse.com/thread-3488-1-1.html
Opublikowano 2023-5-8 09:37:41 |
Naucz się uczyć
Opublikowano 2023-5-17 10:37:28 |
Kod statusu HTTP: 204 No Content

204 Brak treści: Serwer pomyślnie przetworzył żądanie, ale nic nie zwrócił.

Zapisywanie do korpusu odpowiedzi jest nieprawidłowe dla odpowiedzi z kodem statusowym 204.
 Ziemianin| Opublikowano 2023-6-22 13:20:52 |
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