C#

Service 생성 성능 측정

검은고양이개발자 2024. 2. 19. 13:32
반응형

서비스의 생성 비용을 측정하는 방법은 여러 가지가 있습니다. 다음은 그중 일부입니다:


1. 시간 측정: 

 서비스 인스턴스를 생성하는 데 걸리는 시간을 측정합니다. 이는 System.Diagnostics.Stopwatch 클래스를 사용하여 측정할 수 있습니다. 이 방법은 서비스 생성의 CPU 시간을 측정합니다.

 

var stopwatch = Stopwatch.StartNew();
var service = new MyService();
stopwatch.Stop();
Console.WriteLine($"Service creation took {stopwatch.ElapsedMilliseconds} ms");

 

2. 프로파일러 사용: 

 코드 프로파일러를 사용하여 서비스 생성의 성능을 측정합니다. 프로파일러는 코드의 실행 시간, 메모리 사용량, CPU 사용량 등을 측정할 수 있습니다. 

Visual Studio의 Performance Profiler, JetBrains dotTrace, ANTS Performance Profiler 등이 있습니다.


3. 메모리 사용량 측정: 

 서비스 인스턴스를 생성하기 전후의 메모리 사용량을 비교하여, 서비스 생성이 메모리에 미치는 영향을 측정합니다. 이는 System.GC.GetTotalMemory 메서드를 사용하여 측정할 수 있습니다.

 

long before = GC.GetTotalMemory(forceFullCollection: true);
var service = new MyService();
long after = GC.GetTotalMemory(forceFullCollection: true);
Console.WriteLine($"Service creation used {after - before} bytes");
반응형