메모리 요구 사항

Aspose.Words은 다양한 형식의 문서 작업을 위한 다양한 기능을 제공합니다. Aspose.Words이 처리하거나 렌더링할 수 있는 문서 파일의 최대 크기에 제한이 없다는 점에 유의해야 합니다. 유일한 제한은 당신 편에서 사용할 수 있는RAM(메모리)의 양입니다.

Aspose.Words의 메모리 필요량

일반적으로Aspose.Words는 메모리에 문서 모델을 구축하기 위해 문서 크기보다 몇 배 더 많은 메모리가 필요합니다. 예를 들어 문서 크기가 1MB인 경우Aspose.Words은 메모리에 문서 개체 모델(DOM)을 작성하려면RAM중 10-20MB이 필요합니다. 일부 형식은 다른 형식보다 더 컴팩트하기 때문에 승수는 형식에 따라 다릅니다. 예를 들어,DOCX는DOC과RTF보다 더 콤팩트하고DOC은RTF보다 더 콤팩트합니다.

특정 문서 파일을 처리하는 동안Aspose.Words이 실제로 얼마나 많은 메모리를 소비하는지 추정하는 정확한 방법은 없습니다. Java는 클래스에 데이터를 저장하므로 각 클래스 인스턴스는JVM(Java가상 머신)내부 용도로 일부 메모리를 사용합니다. 따라서 모든 단락 또는 서식이 지정된 텍스트(심지어 한 문자로 구성됨)는DOM에로드 한 후 추가 메모리를 사용합니다. 또한Java가비지 수집기 엔진은 복잡한 알고리즘을 사용하여 메모리 수집을 수행하는 가장 좋은 시간을 결정하므로 실제 메모리 소비를 결정하는 것이 어렵습니다.

메모리 양을 계산하는 방법

두 가지 문서를 고려해 보겠습니다:

  1. DOCX"A"문서-0.35MB크기(2 천 페이지),텍스트만
  2. DOCX"B"문서–0.35MB크기(단 1 페이지),안에PNG이미지 포함

아시다시피DOCX,ODT등과 같은 많은 현대 형식입니다. 간단한ZIP아카이브입니다. 그래서 우리는 다음과 같은 계산 알고리즘을 얻습니다:

  1. 압축 풀기 압축 해제된 문서"A"에는 20MB크기가 있고 문서"B"에는0.4MB크기가 있습니다
  2. 문서에 모델 로드(문서 개체 모델 작성–DOM):
  • 첫 번째 문서"A"의DOM을 만들려면 49MB크기가 필요합니다
  • 두 번째 문서"B"의DOM을 만들려면 2MB크기만 필요합니다.
  1. 이러한 문서를PDF로 렌더링하는 데 필요한 메모리 양을 측정합니다. 이 작업의 경우Aspose.Words이 필요합니다:
  • 294MB문서"A"
  • 7MB문서"B"

그래서,당신이 볼 수 있듯이,입력 문서 크기에 선형 의존성이 없다. 문서 형식,복잡성 및 구조,이미지 수 및 형식 및 기타 많은 요소와 같이 필요한RAM크기에 영향을 줄 수 있는 많은 요소가 있습니다.

메모리 승수를 가장 정확하게 계산하는 방법

수천 개의 실제 문서를 사용한 실험은 일반적으로Aspose.Words이 메모리에 문서 모델을 작성하고 흐름 형식 간의 변환,mail merge,구문 분석,바꾸기 등과 같은 간단한 작업을 수행하기 위해 평균 문서 크기보다 몇 배 더 많은 메모리를 필요로 함을 보여줍니다. 때때로 우리는 2 의 승수,때로는 20 에 대해 이야기하고 있습니다.

렌더링(고정 페이지 형식으로 변환),필드 업데이트,페이지 분할 등과 같은 더 복잡한 작업은 일부 문서의 경우Aspose.WordsDOM에 로드된 문서에 의해 할당된 메모리보다 20 배 더 많은 리소스가 필요합니다.

프로파일 링 결과가Aspose.Words에서 가능한 메모리 문제를 나타내는 경우 다음 주소로 문의하십시오 지원 팀 그리고 모든 진단 정보를 포함하십시오.

또한 참조