Тази статия е огледална статия за машинен превод, моля, кликнете тук, за да преминете към оригиналната статия.

Изглед: 1|Отговор: 0

[Източник] .NET/C# Базиран на SQL SERVER, използва MERGE + HOLDLOCK за идентификатори с висока конкурентност

[Копирай линк]
Публикувано вПреди 5 секунди | | | |
Изисквания: Използваната MERGE + HOLDLOCK е едностепенна атомарна операция, която, комбинирана с механизма за заключване, перфектно разрешава паралелни конфликти на ниво база данни. Тази статия завършва функцията за избор на номер (предавател) въз основа на MSSQL базата данни.

Скриптът за създаване на база данни е следният:
Извиканият C# код е следният:
Изпълнявайте както е показано по-долу:



Тестването и изпращането на 10 000 акаунта отнема около 6 секунди,Средно могат да се вземат 1 666 номера на секунда, което вече може да поддържа повечето бизнеси.

Core WITH (HOLDLOCK): Този ред код е критичен. Той представлява използването на сериализируем файл. Когато няколко нишки или няколко услуги искат един и същ префикс (например, всички се състезават за един и същ номер на поръчка), може насилствено да нареди тези заявки, напълно предотвратявайки вмъкването на един и същ префикс или добавянето на един и същ номер от две нишки, гарантирайки абсолютна уникалност и непрекъснатост на числата.




Предишен:Разликите между location.assign, location.href и location.replace
Отричане:
Целият софтуер, програмни материали или статии, публикувани от Code Farmer Network, са само за учебни и изследователски цели; Горното съдържание не трябва да се използва за търговски или незаконни цели, в противен случай потребителите ще понесат всички последствия. Информацията на този сайт идва от интернет, а споровете за авторски права нямат нищо общо с този сайт. Трябва напълно да изтриете горното съдържание от компютъра си в рамките на 24 часа след изтеглянето. Ако ви харесва програмата, моля, подкрепете оригинален софтуер, купете регистрация и получете по-добри услуги. Ако има нарушение, моля, свържете се с нас по имейл.

Mail To:help@itsvse.com