Cet article est un article miroir de traduction automatique, veuillez cliquer ici pour accéder à l’article original.

Vue: 5163|Répondre: 5

[.NET Core] ASP.NET Core (18) Personnaliser un cache de sortie OutputCache simple

[Copié le lien]
Publié le 07-05-2023 à 21:42:06 | | | |
Exigences : En avoir un dans le .NET FrameworkOutputCacheAttributeCette fonctionnalité (qui sert à marquer la méthode de fonctionnement de mise en cache de sa sortie) stocke en mémoire des données fréquemment consultées et rarement changeantes, et produit directement le contenu de réponse, ce qui peut améliorer la performance de la concurrence du site web et réduire la pression sur le serveur et la base de données. Cette fonctionnalité n’a été ajoutée que dans .NET 7.





ASP.NET Middleware de cache de sortie dans Core :La connexion hyperlientérée est visible.

Le principe de la mise en cache de sortie : chaque requête détermine d’abord si elle existe dans le cache, si elle n’existe pas, écrit le contenu de la réponse dans le cache puis produit la réponse ; si le cache existe, la réponse de sortie des données est directement obtenue à partir du cache. via le cache de sortieRéduire les requêtes dans la base de données, diminuer certaines opérations logiques et récupérer directement depuis le cache améliore à la fois la concurrence et la réactivité

Comme il n’y a pas de fonctionnalité OutputCacheAttribute dans .NET 6, nous pouvons implémenter nous-mêmes un cache de sortie simple.


En l’absence de cache de sortie, les résultats du test de résistance sont les suivants (La base de données du projet est connectée au serveur de Hong Kong):



Résultats du test de résistance : seulement 10 concurrents par seconde autorisés (transfert de base de données lent).

Pour essayer d’ajouter un cache de sortie, commencez par créer une nouvelle fonctionnalité OutputCacheAttribute, le code est le suivant :

Créez un nouveau middleware OutputCacheMiddleware pour bloquer la requête, et le code est le suivant :

Ajoutez le middleware UseOutputCacheExtensions à Program.cs avec le code suivant :

Enfin, ajoutez la fonctionnalité à la méthode contrôleur avec le code suivant :

Encore une fois, avec les tests de pression, cela peut être réaliséPlus de 10 000 concurrents par seconde, comme montré dans la figure ci-dessous :

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



L’outil Cassowary pour les tests de stress des requêtes HTTP
https://www.itsvse.com/thread-10557-1-1.html
(Fin)




Précédent:[Tourne]. NET 8 : Nouveaux types de hautes performances
Prochain:.NET Core utilise des canaux de file d’attente haute performance
 Propriétaire| Publié le 07-05-2023 à 21:50:45 |

révision

ASP.NET Core (17) intègre l’analyse de performance des applications MiniProfile
https://www.itsvse.com/thread-10571-1-1.html

ASP.NET Core (16) Dépendant de l’injection de services d’enregistrement dynamiques
https://www.itsvse.com/thread-10560-1-1.html

ASP.NET Core (XV) utilise HttpClient pour envoyer des requêtes HTTP
https://www.itsvse.com/thread-10311-1-1.html

ASP.NET Core (quatorze) est basé sur le captcha d’image SkiaSharp
https://www.itsvse.com/thread-10287-1-1.html

ASP.NET Core (XIII) pour déterminer s’il s’agit d’une requête Ajax ou non
https://www.itsvse.com/thread-10284-1-1.html

ASP.NET Core (douze) front-end JS, regroupement CSS et compression
https://www.itsvse.com/thread-10282-1-1.html

ASP.NET route de terminaison Core (XI) ajoute un middleware pour afficher tous les services DI
https://www.itsvse.com/thread-10269-1-1.html

ASP.NET Explication détaillée des priorités de configuration dans Core(10).
https://www.itsvse.com/thread-10265-1-1.html

ASP.NET Explication détaillée du middleware Middleware de Core (9).
https://www.itsvse.com/thread-9647-1-1.html

ASP.NET Explication détaillée du Core Middleware
https://www.itsvse.com/thread-8126-1-1.html

ASP.NET piège des paramètres par défaut de l’interface Swagger dans Core(8).
https://www.itsvse.com/thread-9640-1-1.html

ASP.NET Core (7) Analyse approfondie du code source du framework
https://www.itsvse.com/thread-9601-1-1.html

ASP.NET DI Core (VI) obtient manuellement la méthode d’injection d’objets
https://www.itsvse.com/thread-9595-1-1.html

ASP.NET Core (cinq) est basé sur les transactions distribuées CAP
https://www.itsvse.com/thread-9593-1-1.html

ASP.NET Validation unifiée du modèle ModelState filtre Core(4)
https://www.itsvse.com/thread-9589-1-1.html

ASP.NET Core (iii) Créer dynamiquement des instances à l’aide d’ActivatorUtilities
https://www.itsvse.com/thread-9488-1-1.html

ASP.NET Core (2) Redémarrer l’application par code
https://www.itsvse.com/thread-9480-1-1.html

ASP.NET Core (1) utilise la mise en cache Redis
https://www.itsvse.com/thread-9393-1-1.html
 Propriétaire| Publié le 07-05-2023 à 21:53:14 |
À propos du asp.net Désactivation du vidage du cache OutputCache
https://www.itsvse.com/thread-5843-1-1.html

ASP.NET Configuration du paramètre web.config du cache OutputCache
https://www.itsvse.com/thread-4917-1-1.html

mvc cache : l’utilisation correcte de la propriété OutputCache VaryByParam
https://www.itsvse.com/thread-3488-1-1.html
Posté le 08-05-2023 à 09:37:41 |
Apprendre à apprendre
Publié le 17-05-2023 à 10:37:28 |
Code de statut HTTP : 204 Pas de contenu

204 Pas de contenu : Le serveur a traité la demande avec succès mais n’a rien répondu.

L’écriture dans le corps de la réponse est invalide pour les réponses avec le code de statut 204.
 Propriétaire| Publié le 22-06-2023 à 13:20:52 |
Propriété HttpRequest.BodyReader :https://learn.microsoft.com/zh-c ... prequest.bodyreader

Propriété HttpResponse.BodyWriter :https://learn.microsoft.com/zh-c ... response.bodywriter
Démenti:
Tous les logiciels, supports de programmation ou articles publiés par Code Farmer Network sont uniquement destinés à l’apprentissage et à la recherche ; Le contenu ci-dessus ne doit pas être utilisé à des fins commerciales ou illégales, sinon les utilisateurs assumeront toutes les conséquences. Les informations sur ce site proviennent d’Internet, et les litiges de droits d’auteur n’ont rien à voir avec ce site. Vous devez supprimer complètement le contenu ci-dessus de votre ordinateur dans les 24 heures suivant le téléchargement. Si vous aimez le programme, merci de soutenir un logiciel authentique, d’acheter l’immatriculation et d’obtenir de meilleurs services authentiques. En cas d’infraction, veuillez nous contacter par e-mail.

Mail To:help@itsvse.com