반응형
LPE_BATCH 스핀락
- Version : SQL Server 2005, 2008, 2008R2, 2012
SQL Server에서 동적관리뷰(DMV)를 사용하여 스핀락의 정보를 확인할 수 있다. Sys.dm_os_spinlock_stats 명령어어를 사용하여 현재 스핀락의 상태를 확인 할 수 있다.
select * from sys.dm_os_spinlock_stats |
스핀락은 특정 구조를 보호하는데 사용되는 가벼운 사용자 모드 동기화 개체이다. 스핀락의 목표는 빠르고 효율적인 것에 있다. 그래서 궁극적인 목표는 충돌을 0으로 하는 것과 스핀을 0으로 하는 것이다. SQL Server 2008은 150개 이상의 스핀락 개체가 포함되어 다중 스레드가 엑세스하는 동안 다양한 내부 구조를 보호한다.
LPE_BATCH 스핀락이 사용되는 곳을 몇 가지 알아 보자.
- 교착 상태 모니터는 일괄 처리의 작업의 동기화 액세스를 검색한다.
- 일괄 처리 가능한 상태 변경 – 예를 들어 RUNNING, IDLE, ENQUEUED
- DTC나 MARS와 같은 트랜잭션의 입력과 종료
[참고자료]
http://blogs.msdn.com/b/psssql/archive/2010/06/08/how-it-works-spinlock-of-type-lpe-batch.aspx
2013-11-11 / 강성욱 / http://sqlmvp.kr
반응형
'SQL Server > SQL Server Tip' 카테고리의 다른 글
의도하지 않은 분산트랜잭션 사용 - 응용프로그램 개발 시 동일한 객체를 사용하지 않아 분산 트랜잭션으로 승 (0) | 2015.07.23 |
---|---|
Affinity I/O Mask (0) | 2015.07.23 |
SQL Server 17953 오류 - SidePageTable::Init() DeviceIoControl() : Operating system error 1(Incorrect function.) encountered (0) | 2015.07.23 |
SQL 연결 18056 오류 (0) | 2015.07.23 |
SQL 2008 R2 Sp1 적용과 9013 오류 - 포맷 섹터 크기에 따른 오류 (1) | 2015.07.23 |