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

Vue: 1|Répondre: 0

[Source] .NET/C# Basé sur SQL SERVER, utilise MERGE + HOLDLOCK pour les identifiants à haute concurrence

[Copié le lien]
Publié surIl y a 5 secondes | | | |
Exigences : Le MERGE + HOLDLOCK utilisé est une opération atomique en une seule étape qui, combinée au mécanisme de verrouillage, résout parfaitement les conflits concurrents au niveau de la base de données. Cet article complète la fonction de sélecteur de numéros (transmetteur) basée sur la base de données MSSQL.

Le script de création de base de données est le suivant :
Le code C# appelé est le suivant :
Exécutez comme indiqué ci-dessous :



Tester et envoyer 10 000 comptes prend environ 6 secondes,En moyenne, 1 666 nombres peuvent être pris par seconde, qui peut désormais soutenir la plupart des entreprises.

Core WITH (HOLDLOCK) : Cette ligne de code est cruciale. Elle représente l’utilisation d’un Sérialisable. Lorsque plusieurs threads ou services demandent le même préfixe (par exemple, tout le monde se dispute pour le même numéro d’ordre), il peut mettre ces requêtes en file d’attente de force, empêchant complètement deux threads d’insérer le même préfixe ou d’ajouter le même numéro en même temps, assurant ainsi une unicité absolue et une continuité des numéros.




Précédent:Les différences entre location.assign, location.href et location.replace
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