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

Vue: 163142|Répondre: 27

[.NET Core] [Combat réel] ASP.NET Core est basé sur la vente flash de verrouillage distribuée Redis

[Copié le lien]
Publié sur 26/09/2020 15:34:26 | | | |
Le verrou distribué basé sur zk précédemment écrit est le suivant :

Implémentation du verrou distribué .net/c# Zookeeper [Code source]
https://www.itsvse.com/thread-4651-1-1.html
Redis met en œuvre le principe de verrouillage distribué :

.NET Core implémente l’analyse syntaxique distribuée du principe de verrou basée sur Redis
https://www.itsvse.com/thread-9391-1-1.html
Le principe de la mise en œuvre des verrous distribués dans Redis est d’appeler la commande SETNX de redis, et si la clé existe déjà, la commande SETNX ne fait rien. La commande répond à 1 lorsque le réglage réussit et à 0 lorsqu’il échoue.


Tout d’abord, notre site web simule 10 000 produits, puis écrit une console simulant une requête HTTP, qui prend 40 secondes pour finaliser l’achat, le rendu est le suivant :



Créez un nouveau site web ASP.NET Core 3.1, et le package de verrouillage redis est le suivant :

J’ai vu que de nombreux verrous de libération sur Internet sont écrits comme suit :

Cependant, il semble qu’il puisse y avoir un problème : dans le cas de la concurrence, il est possible de revenir vrai au moment du jugement, c’est effectivement un verrou ajouté seul, mais lorsque le verrou est supprimé, il peut être dansDans les cas extrêmes, le verrou a été obtenu par un autre fil de discussion, au cas où le verrou de quelqu’un d’autre serait supprimé.

Par conséquent, lors de l’obtention d’une serrure, il faut ouvrir un filetage pour prolonger la durée d’expiration de la serrure.

L’interface WeatherForecastController est la suivante :


Vous pouvez lancer le site de l’API via la ligne de commande, qui peut être facilement redémarrée, comme suit :



Créez une nouvelle requête HTTP en maquette .NET Core pour un achat instantané, le code est le suivant :


S’il y a un problème, merci de l’avoir corrigé.

Enfin, joignez le code source :

Touristes, si vous voulez voir le contenu caché de ce post, s’il vous plaîtRépondre





Précédent:JS s’adapte au graphique carrousel de taille d’écran
Prochain:Cette explication détaillée de Javascript
 Propriétaire| Publié sur 09/05/2021 21:12:58 |
Les simulations de sites web ont10 000 articles, puis a écrit une console pour simuler le temps de requête HTTP Le complet affiche complet en 6 secondes


.NET Core implémente des verrous distribués basés sur Redis Lua [avec code source]
https://www.itsvse.com/thread-9642-1-1.html


Publié sur 05/11/2023 11:02:52 |
Regardez Console.WriteLine($"Rush Successful : {safeInstanceSuccessedCount}, Failed : {safeInstanceFailedCount}, Complet : {safeInstanceDoneCount} ») ;
 Propriétaire| Publié sur 27/04/2021 11:17:53 |
Il y a quelques problèmes avec le code, et le blocage de tâche doit utiliser await Task.Delay(i) ;  , n’utilise pas le sommeil
Publié sur 27/09/2020 14:13:33 |
Mark, Mark, Mark
Publié sur 05/10/2020 11:12:20 |
Marque, marque, marque
Publié sur 02/11/2020 15:39:13 |
dfdsfdsfds
Publié sur 05/11/2020 10:08:13 |
Le code source est nécessaire hahahahaha
Publié sur 02/12/2020 15:11:30 |
Merci d’avoir partagé.
Publié sur 07/12/2020 21:10:03 |
[Combat réel] ASP.NET Core est basé sur la vente flash de verrouillage distribuée Redis
Publié sur 09/12/2020 17:17:34 |
Regarde l’effet réel et le code source.
Publié sur 20/01/2021 15:17:50 |
Merci, merci, merci, merci
Publié sur 26/01/2021 16:10:46 |
MARK MARK
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