Les problèmes de verrouillage et de blocage dégradent souvent les performances des systèmes multi-utilisateurs. Je déconseille d'obliger SQL Server à verrouiller les données comme vous pensez qu'il devrait le faire. Il vaut bien mieux comprendre la manière dont SQL Server verrouille les données, quelle quantité de données il verrouille généralement
Tip 7 : Comprenez le verrouillage
et pendant combien de temps il maintient les verrous. Après avoir bien compris la manière dont SQL Server pratique le verrouillage et le blocage, on pourra écrire des applications qui travaillent avec SQL Server plutôt que contre lui.
Ainsi, après que l’application modifie les données dans une transaction, SQL Server verrouille ces données et les refuse à tout autre processus jusqu’à ce que vous engagiez (commit) ou repreniez (rollback) la transaction. Si l’on met longtemps à émettre une commande commit ou rollback, les données seront verrouillées longuement. D’où les deux conseils suivants : garder les transactions aussi courtes que possible et interdire à tout utilisateur d’intervenir au milieu de la transaction.
Par défaut, SQL Server maintient des verrous exclusifs – acquis lorsqu’on insère, met à jour et supprime des données – jusqu’à la fin d’une transaction. SQL Server ne maintient des verrous de partage (share) – acquis lors de la sélection des données – que jusqu’au moment où l’on finit de lire les données sélectionnées.
On peut modifier le niveau d’isolation des transactions pour amener SQL Server à maintenir les verrous de partage jusqu’à la fin d’une transaction. Cela signifie qu’une fois les données extraites et lues, personne d’autre ne peut les modifier. Il peut paraître judicieux de modifier les niveaux d’isolation des transactions pour réserver les données à son propre usage. Mais ces modifications sont néfastes pour des systèmes multi-utilisateurs dans lesquels de nombreux utilisateurs ont besoin d’accéder aux mêmes données. Je conseille de laisser le niveau d’isolation des transactions à Committed Read (qui est d’ailleurs le niveau d’isolation des transactions par défaut) et de ne changer le niveau que quand c’est le seul moyen d’atteindre les objectifs de performances fixés.
Téléchargez cette ressource
Plan de sécurité Microsoft 365
Les attaquants savent comment prendre le contrôle de votre tenant Microsoft 365, et vous, savez-vous comment le reprendre en main ?
Les articles les plus consultés
Les plus consultés sur iTPro.fr
- Data streaming : le nouveau socle stratégique de l’IA en entreprise
- Ransomware en santé : la double extorsion fait exploser la facture en Europe
- Les fuites de données explosent en France, désormais pays le plus touché d’Europe
- L’IA accélère les attaques et expose les identités non gouvernées
Articles les + lus
Model Context Protocol : le contexte, grand oublié du débat
Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
Couchbase lance AI Data Plane pour industrialiser l’IA agentique
Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
Computex 2026 : 5 signaux forts à retenir
À la une de la chaîne Tech
- Model Context Protocol : le contexte, grand oublié du débat
- Microsoft dévoile MAI-Thinking-1 : un modèle de raisonnement « enterprise-grade » en preview publique
- Couchbase lance AI Data Plane pour industrialiser l’IA agentique
- Windows 11 : Microsoft généralise le point-in-time restore pour accélérer la remise en service des PC
- Computex 2026 : 5 signaux forts à retenir
