AWS Lambda에서 세그멘테이션 오류 발생
AWS Lambda를 Linux 컨테이너에서 사용하고 렌더링 메서드를 여러 번 동시에 호출할 때 다음과 같은 예외가 발생하는 경우가 있습니다.
예외:
오류: 런타임이 오류와 함께 종료되었습니다. 신호: 세그멘테이션 오류 Runtime.ExitError
솔루션
PDF 문서가 렌더링된 후 GC.Collect 메서드를 호출하는 것이 해결책입니다. 다른 클라우드 플랫폼에서는 이러한 문제를 겪어본 적이 없습니다. 이 문제는 최근 버전에서만 발생하기 시작했습니다. Amazon Linux 2를 사용하는 .NET 6 기반의 기존 버전은 여전히 작동합니다.
// Create an instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the HTML string to a PDF document
PdfDocument document = renderer.RenderHtmlAsPdf(htmlString);
// Explicitly trigger garbage collection to help manage memory usage
GC.Collect();
// Create an instance of ChromePdfRenderer
ChromePdfRenderer renderer = new ChromePdfRenderer();
// Render the HTML string to a PDF document
PdfDocument document = renderer.RenderHtmlAsPdf(htmlString);
// Explicitly trigger garbage collection to help manage memory usage
GC.Collect();
' Create an instance of ChromePdfRenderer
Dim renderer As New ChromePdfRenderer()
' Render the HTML string to a PDF document
Dim document As PdfDocument = renderer.RenderHtmlAsPdf(htmlString)
' Explicitly trigger garbage collection to help manage memory usage
GC.Collect()

