Ця стаття є дзеркальною статтею машинного перекладу, будь ласка, натисніть тут, щоб перейти до оригінальної статті.

Вид: 5163|Відповідь: 5

[.NET Core] ASP.NET Core (18) Налаштуйте простий кеш виводу OutputCache

[Копіювати посилання]
Опубліковано 2023-5-7 21:42:06 | | | |
Вимоги: Мати таку модель у .NET FrameworkOutputCacheAttributeЦя функція (яка використовується для позначення методу кешування його виходу) зберігає часто доступні та рідко змінювані дані в пам'яті та безпосередньо видає відповідний контент, що може покращити конкурентність вебсайту та зменшити навантаження на сервер і базу даних. Ця функція була додана лише в .NET 7.





ASP.NET Вивести кеш-проміжне програмне забезпечення в Core:Вхід за гіперпосиланням видно.

Принцип кешування вихідних даних: кожен запит спочатку визначає, чи існує він у кеші, якщо його немає, записує вміст відповіді в кеш і потім виводить відповідь; якщо кеш існує, відповідь на вихід даних отримується безпосередньо з кешу. через кеш виводуЗменшення запитів до бази даних, зменшення деяких логічних операцій і пряме завантаження з кешу покращують як паралельність, так і оперативність

Оскільки в .NET 6 немає функції OutputCacheAttribute, ми можемо реалізувати простий кеш виводу самостійно.


За відсутності кешу виходу результати стрес-тесту такі (База даних проєкту підключена до сервера Гонконгу):



Результати стрес-тесту: дозволено лише 10 паралелей на секунду (повільний перехід у базі даних).

Щоб спробувати додати кеш виходу, спочатку створіть нову функцію OutputCacheAttribute, код виглядає так:

Створіть новий проміжний програмний забезпечення OutputCacheMiddleware для блокування запиту, і код виглядає так:

Додайте проміжне програмне забезпечення UseOutputCacheExtensions до Program.cs за допомогою наступного коду:

Нарешті, додайте цю функцію до методу контролера наступним кодом:

Знову ж таки, за допомогою випробування під тиском це можливоПонад 10 000 спільних рухів на секунду, як показано на рисунку нижче:

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



Інструмент Cassowary для стрес-тестування HTTP-запитів
https://www.itsvse.com/thread-10557-1-1.html
(Кінець)




Попередній:[Поворот]. NET 8 Нові високопродуктивні типи
Наступний:Використовуються канали високопродуктивної черги .NET Core
 Орендодавець| Опубліковано 2023-5-7 21:50:45 |

огляд

ASP.NET Core (17) інтегрує аналіз продуктивності додатків MiniProfile
https://www.itsvse.com/thread-10571-1-1.html

ASP.NET Ядро (16) Залежить від ін'єкції динамічних реєстраційних сервісів
https://www.itsvse.com/thread-10560-1-1.html

ASP.NET Core (XV) використовує HttpClient для надсилання HTTP-запитів
https://www.itsvse.com/thread-10311-1-1.html

ASP.NET Core (чотирнадцять) базується на капчі зображень SkiaSharp
https://www.itsvse.com/thread-10287-1-1.html

ASP.NET Core (XIII), щоб визначити, чи є це запитом Ajax
https://www.itsvse.com/thread-10284-1-1.html

ASP.NET Core (дванадцять) фронтенд JS, пакетування CSS та стиснення
https://www.itsvse.com/thread-10282-1-1.html

ASP.NET Маршрут кінцевої точки Core (XI) додає проміжне програмне забезпечення для відображення всіх DI-сервісів
https://www.itsvse.com/thread-10269-1-1.html

ASP.NET Детальне пояснення пріоритетів конфігурації в Core(10).
https://www.itsvse.com/thread-10265-1-1.html

ASP.NET Детальне пояснення проміжного програмного забезпечення Core (9).
https://www.itsvse.com/thread-9647-1-1.html

ASP.NET Детальне пояснення основного проміжного програмного забезпечення
https://www.itsvse.com/thread-8126-1-1.html

ASP.NET яма стандартних параметрів інтерфейсу Swagger у Core(8).
https://www.itsvse.com/thread-9640-1-1.html

ASP.NET Core (7) Глибокий аналіз вихідного коду фреймворку
https://www.itsvse.com/thread-9601-1-1.html

ASP.NET Core (VI) DI вручну отримує метод інжекції об'єктів
https://www.itsvse.com/thread-9595-1-1.html

ASP.NET Core (п'ять) базується на розподілених транзакціях CAP
https://www.itsvse.com/thread-9593-1-1.html

ASP.NET Фільтр Core(4) уніфікована валідація моделі ModelState
https://www.itsvse.com/thread-9589-1-1.html

ASP.NET Ядро (iii) Динамічно створювати екземпляри за допомогою ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Ядро (2) Перезапуск додатку за кодом
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) використовує кешування Redis
https://www.itsvse.com/thread-9393-1-1.html
 Орендодавець| Опубліковано 2023-5-7 21:53:14 |
Про налаштування вимкнення asp.net OutputCache cache wash
https://www.itsvse.com/thread-5843-1-1.html

ASP.NET Конфігурація параметра кешу OutputCache web.config
https://www.itsvse.com/thread-4917-1-1.html

mvc кешуй правильне використання властивості OutputCache VaryByParam
https://www.itsvse.com/thread-3488-1-1.html
Опубліковано 2023-5-8 09:37:41 |
Вчитися вчитися
Опубліковано 2023-5-17 10:37:28 |
HTTP-код статусу: 204 Без контенту

204 Відсутність контенту: Сервер успішно обробив запит, але нічого не повернув.

Написання до тіла відповіді є недійсним для відповідей із кодом статусу 204.
 Орендодавець| Опубліковано 2023-6-22 13:20:52 |
Властивість HttpRequest.BodyReader:https://learn.microsoft.com/zh-c ... prequest.bodyreader

Властивість HttpResponse.BodyWriter:https://learn.microsoft.com/zh-c ... response.bodywriter
Застереження:
Усе програмне забезпечення, програмні матеріали або статті, опубліковані Code Farmer Network, призначені лише для навчання та досліджень; Вищезазначений контент не повинен використовуватися в комерційних чи незаконних цілях, інакше користувачі несуть усі наслідки. Інформація на цьому сайті надходить з Інтернету, і спори щодо авторських прав не мають до цього сайту. Ви повинні повністю видалити вищезазначений контент зі свого комп'ютера протягом 24 годин після завантаження. Якщо вам подобається програма, будь ласка, підтримуйте справжнє програмне забезпечення, купуйте реєстрацію та отримайте кращі справжні послуги. Якщо є будь-яке порушення, будь ласка, зв'яжіться з нами електронною поштою.

Mail To:help@itsvse.com