2010-02-21 3 views
3

ASP.NET 3.5 및 SQL 2008을 기반으로하는 대용량 웹 응용 프로그램에서 유지 관리 기간없이 24x7 고 가용성 수준을 유지하기를 바랍니다.낮은 우선 순위에서 SQL Server 2008 Sproc 실행

시간이 지남에 따라 우리는 더 이상 필요하지 않은 데이터를 제거하고 일부 메트릭을 컴파일하기 위해 하우스 키핑 작업을 수행하는 저장된 procs에 의존하게되었습니다. 우리의 문제점은 이러한 sprocs가 서버의 거의 모든 CPU를 소비한다는 것입니다 사이트의 응답성에 심각한 영향을 미치게됩니다.

이러한 sprocs를 낮은 우선 순위로 실행할 수있는 방법이 있습니까? 우리가 데이터베이스 서버의 CPU에 미치는 영향을 줄일 수있는 한 그들이 완료하는 데 걸리는 시간은 중요하지 않습니다.

답변

6

Resource Governor을 사용하면 들어오는 응용 프로그램 요청에서 사용할 수있는 CPU 및 메모리의 양에 제한을 지정할 수 있습니다.

BEGIN TRAN; 
-- Create a new resource pool and set a maximum CPU limit. 
CREATE RESOURCE POOL PoolAdhoc 
WITH (MAX_CPU_PERCENT = 50); 
-- Configure the workload group so it uses the new resource pool. 
-- The following statement moves 'GroupAdhoc' from the 'default' pool --- to 'PoolAdhoc' 
ALTER WORKLOAD GROUP GroupAdhoc 
USING PoolAdhoc; 
COMMIT TRAN; 
GO 
-- Apply the changes to the Resource Governor in-memory configuration. 
ALTER RESOURCE GOVERNOR RECONFIGURE; 
GO 
+1

SQL Server 2008의 리소스 관리자는 이전 버전입니까? – smaclell