PDF 렌더링 시간 초과 문제 해결

This article was translated from English: Does it need improvement?
Translated
View the article in English
  • HTML에서 PDF를 렌더링할 수 없습니다
  • URL에서 PDF를 렌더링할 수 없습니다 HTML에서 PDF로 변환하는 중 오류가 발생했습니다.
  • URL에서 PDF를 생성하는 중 오류 발생
  • 지정되지 않은 네이티브 예외

이러한 일반적인 오류 메시지는 Chrome 렌더링 엔진에 오류가 발생했음을 나타냅니다.

아래 코드 조각을 실행하면 오류 원인을 파악하는 데 도움이 되는 "Default.log" 로그 파일이 생성됩니다.

// Enable logging for all events and set the file path for the log file.
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
IronPdf.Logging.Logger.LogFilePath = "Default.log";
// Enable logging for all events and set the file path for the log file.
IronPdf.Logging.Logger.LoggingMode = IronPdf.Logging.Logger.LoggingModes.All;
IronPdf.Logging.Logger.LogFilePath = "Default.log";
$vbLabelText   $csharpLabel

렌더링 타임아웃

타임아웃은 IronPDF에 구현된 기능으로, PDF 렌더링 시간이 길어짐에 따라 애플리케이션이 교착 상태에 빠지거나 응답하지 않게 되는 것을 방지합니다. 이는 사용자가 리소스를 관리하여 CPU, 메모리, 네트워크 대역폭과 같은 리소스가 완료하는 데 시간이 너무 오래 걸리는 프로세스에 묶이지 않도록 함으로써 사용자에게 도움이 될 수 있습니다. PDF 렌더링 프로세스가 제시간에 완료되지 않으면 아래에 설명된 대로 시간 초과 오류가 발생합니다.

  • HTML을 PDF로 변환하는 동안 60초 후에 타임아웃이 발생합니다.
  • URL에서 PDF를 렌더링하는 동안 60초 후 타임아웃 발생
  • HTML에서 PDF로 변환하는 중 시간 초과 오류 발생
  • URL에서 PDF를 생성하는 동안 시간 초과 발생
  • HTML에서 PDF로 렌더링하는 동안 시간 초과 발생
  • URL에서 PDF를 렌더링하는 동안 시간 초과 발생

IronPDF에서 렌더링 시간이 오래 걸리고 시간 초과 오류가 발생하는 데에는 여러 가지 이유가 있습니다. 예를 들어 용량이 크거나 무거운 PDF를 렌더링하는 경우, PDF 렌더링을 위해 원격 리소스/자산을 가져오는 경우, 또는 렌더링 자체 중에 발생하는 문제 등이 있습니다. 하지만 타임아웃 시간을 재정의하면 대개 이 문제를 해결할 수 있습니다.

기본 설정을 재정의하려면 사용자는 ChromePdfRenderOptions 클래스의 Timeout 속성 에 접근하여 더 높은 값으로 설정할 수 있습니다.

// Set the timeout for rendering to 120 seconds.
RenderingOptions.Timeout = 120; // seconds
// Set the timeout for rendering to 120 seconds.
RenderingOptions.Timeout = 120; // seconds
$vbLabelText   $csharpLabel

참고해 주세요2021.12.4995 버전부터 IronPDF의 기본 렌더링 시간 제한은 60초입니다.

렌더링 지연

경우에 따라 IronPDF는 다음과 같은 결과를 표시할 수 있습니다.

  • 빈 PDF 파일
  • 내용이 불완전한 PDF 파일
  • 이미지 파일이 누락된 PDF 파일

이 문제는 PDF 문서가 리소스에서 콘텐츠 또는 자산을 가져오는 호출이 제때 완료되기 전에 렌더링되었기 때문에 발생할 수 있습니다.

PDF 렌더러에 렌더링 지연을 적용하면 일반적으로 이 문제를 해결하는 데 도움이 됩니다. 이렇게 하면 렌더러가 PDF 렌더링을 설정된 시간 동안 지연시켜 콘텐츠 또는 에셋을 PDF 렌더링 전에 제때 로드할 수 있도록 합니다. 이를 위해 WaitFor 래퍼 객체의 RenderDelay() 메서드에 접근하여 원하는 지속 시간을 메서드 매개변수로 설정하고 ChromePdfRenderOptions 속성 중 하나로 렌더러에 적용하면 됩니다.

// Set a render delay of 5000 milliseconds (5 seconds) to ensure content and assets are loaded before rendering.
RenderingOptions.WaitFor.RenderDelay(5000);  // milliseconds
// Set a render delay of 5000 milliseconds (5 seconds) to ensure content and assets are loaded before rendering.
RenderingOptions.WaitFor.RenderDelay(5000);  // milliseconds
$vbLabelText   $csharpLabel

참고해 주세요기본 렌더링 지연 시간은 20ms입니다

RenderDelay() 메서드 외에도 WaitFor 래퍼 객체에는 활용할 수 있는 다른 메서드가 있습니다.

로그 및 엔지니어 검토를 위해 오류를 보고하는 방법에 대한 자세한 내용은 IronPDF 엔지니어링 지원 요청 방법 페이지를 참조하십시오.

커티스 차우
기술 문서 작성자

커티스 차우는 칼턴 대학교에서 컴퓨터 과학 학사 학위를 취득했으며, Node.js, TypeScript, JavaScript, React를 전문으로 하는 프론트엔드 개발자입니다. 직관적이고 미적으로 뛰어난 사용자 인터페이스를 만드는 데 열정을 가진 그는 최신 프레임워크를 활용하고, 잘 구성되고 시각적으로 매력적인 매뉴얼을 제작하는 것을 즐깁니다.

커티스는 개발 분야 외에도 사물 인터넷(IoT)에 깊은 관심을 가지고 있으며, 하드웨어와 소프트웨어를 통합하는 혁신적인 방법을 연구합니다. 여가 시간에는 게임을 즐기거나 디스코드 봇을 만들면서 기술에 대한 애정과 창의성을 결합합니다.

시작할 준비 되셨나요?
Nuget 다운로드 17,527,568 | 버전: 2026.2 방금 출시되었습니다