DBA

API 통신과 관련된 타임아웃 설정 본문

[3] Development/MVC(ASP.NET with C#)

API 통신과 관련된 타임아웃 설정

코볼 2025. 4. 10. 15:39
728x90
반응형
SMALL

✅ 1. <httpRuntime>을 통한 전체 요청 타임아웃 설정

ASP.NET MVC에서 웹 애플리케이션의 전체 요청 처리 시간 제한을 설정하려면 web.config의 <system.web> 섹션에 다음과 같이 작성합니다.

<configuration>
  <system.web>
    <httpRuntime executionTimeout="110" />
  </system.web>
</configuration>

 

  • executionTimeout: 요청이 처리되는 최대 시간(초 단위), 기본값은 110초
  • 이 설정은 서버가 클라이언트 요청을 처리하는 전체 시간을 제한합니다.

 

✅ 2. HttpClient 또는 WebRequest 수준에서의 통신 타임아웃 설정

API를 호출하는 C# 코드 내에서 타임아웃을 명시적으로 설정하는 것이 일반적이며 더 정밀합니다.

🔹 HttpClient 사용 시

var httpClient = new HttpClient
{
    Timeout = TimeSpan.FromSeconds(30) // 30초 타임아웃 설정
};

 

 

  • Timeout: API 응답을 기다리는 최대 시간
  • 일반적으로 10~30초가 적당합니다

🔹 HttpWebRequest 사용 시

var request = (HttpWebRequest)WebRequest.Create("https://example.com/api");
request.Timeout = 30000; // 밀리초 단위, 30초
request.ReadWriteTimeout = 30000; // 읽고 쓰는 동안의 시간 제한

 

 

728x90
반응형
LIST
Comments