ความต้องการหน่วยความจำ
Aspose.Wordsให้ความหลากหลายของคุณสมบัติในการทำงานกับเอกสารในรูปแบบต่างๆ จำเป็นต้องทราบว่าไม่มีข้อจำกัดในขนาดสูงสุดของไฟล์เอกสารที่Aspose.Wordsสามารถประมวลผลหรื ข้อจำกัดเพียงอย่างเดียวคือจำนวนRAM(หน่วยความจำ)ที่มีอยู่ในด้านของคุณ.
ความต้องการของหน่วยความจำเท่าใดAspose.Words
โดยปกติAspose.Wordsต้องใช้หน่วยความจำมากกว่าขนาดเอกสารหลายครั้งเพื่อสร้างโมเดลของเอกส ตัวอย่างเช่นถ้าขนาดเอกสารของคุณคือ 1MBAspose.Wordsต้อง 10-20MBของRAMเพื่อสร้างแบบจำลองวัตถุเอกสาร(DOM)ในหน่วยความจำ ตัวคูณขึ้นอยู่กับรูปแบบเนื่องจากบางรูปแบบมีขนาดกะทัดรัดกว่าตัวอื่น ตัวอย่างเช่นDOCXมีขนาดกะทัดรัดมากกว่าDOCและRTFและDOCมีขนาดกะทัดรัดมากกว่าRTF.
ไม่มีวิธีการที่แน่นอนในการประมาณว่าหน่วยความจำ Aspose.Words ใช้ไปเท่าใดจริง ๆ ในระหว่างการประมวลผลไฟล์เอกสารใด ๆ ดังที่คุณทราบ Java จะจัดเก็บข้อมูลในคลาส โดยอินสแตนซ์คลาสแต่ละตัวจะใช้หน่วยความจำบางส่วนสำหรับวัตถุประสงค์ภายใน JVM (เครื่องเสมือน Java) ดังนั้นย่อหน้าหรือข้อความที่จัดรูปแบบใด ๆ (แม้ว่าจะประกอบด้วยอักขระหนึ่งตัว) จะใช้หน่วยความจำเพิ่มเติมบางส่วนหลังจากโหลดลงใน DOM นอกจากนี้ กลไกการรวบรวมขยะ Java ยังใช้อัลกอริทึมที่ซับซ้อนเพื่อกำหนดเวลาที่ดีที่สุดในการดำเนินการรวบรวมหน่วยความจำ ซึ่งทำให้ยากต่อการกำหนดการใช้หน่วยความจำจริง.
วิธีการคำนวณปริมาณของหน่วยความจำ
ลองพิจารณาสองเอกสาร:
- DOCX"A"เอกสาร–0.35MBขนาด(2 พันหน้า),ข้อความเท่านั้น
- DOCX"B"เอกสาร–0.35MBขนาด(เพียง 1 หน้า),มีPNGภาพภายใน
ที่คุณรู้ว่าจำนวนมากของรูปแบบที่ทันสมัยเช่นDOCX,ODT,ฯลฯ เป็นเรื่องง่ายZIPคลังเก็บ ดังนั้นเราจึงได้รับขั้นตอนวิธีการคำนวณต่อไปนี้:
- ถอดซิปออก ไม่มีซิปเอกสาร"A"มี 20MBขนาดเอกสาร"B"มี0.4MBขนาด
- กำลังโหลดเอกสารลงในโมเดล(สร้างโมเดลอ็อบเจ็กต์เอกสาร-DOM):
- การสร้างDOMของเอกสารแรก"A"ต้องใช้ขนาด 49MB
- การสร้างDOMของเอกสารที่สอง"B"ต้องมีขนาดเพียง 2MB.
- การวัดจำนวนหน่วยความจำที่ต้องการเพื่อแสดงเอกสารเหล่านี้เป็นPDF สำหรับการดำเนินการนี้Aspose.Wordsต้องการ:
- 294MBสำหรับเอกสาร"A"
- 7MBสำหรับเอกสาร"B"
ดังนั้น,ที่คุณสามารถดู,ไม่มีการพึ่งพาอาศัยกันเชิงเส้นกับขนาดเอกสารการป้อนข้อมูล. มีหลายปัจจัยที่สามารถส่งผลกระทบต่อขนาดRAMที่ต้องการ-รูปแบบเอกสาร,ความซับซ้อนและโครงสร้าง,จำนวนภาพและรูปแบบของพวกเขา,และปัจจัยอื่นๆอีกมากมาย.
วิธีการคำนวณตัวคูณหน่วยความจำได้อย่างถูกต้องที่สุด
การทดลองกับเอกสารจริงหลายพันฉบับแสดงให้เห็นว่าโดยทั่วไปAspose.Wordsต้องใช้หน่วยความจำมากกว่าขนาดเอกสารโดยเฉลี่ยหลายครั้งเพื่อสร้างโมเดลเอกสารในหน่วยความจำและดำเนินการอย่างง่ายๆเช่นการแปลงระหว่างรูปแบบการไหลmail mergeแยกแยะแทนที่และอื่นๆ บางครั้งเรากำลังพูดถึงตัวคูณของ 2 และบางครั้ง 20.
การดำเนินงานที่ซับซ้อนมากขึ้นเช่นการแสดงผล(แปลงเป็นรูปแบบเพจคงที่),การอัปเดตฟิลด์,การแยกหน้า,และอื่นๆสำหรับเอกสารบางชนิดต้องใช้ทรัพยากรมากกว่าหน่วยความจำที่จัดสรรโดยเอกสารที่โหลดในAspose.WordsDOM20 เท่า.
หากผลลัพธ์การสร้างโปรไฟล์ของคุณบ่งบอกถึงปัญหาหน่วยความจำที่เป็นไปได้ในAspose.Wordsโปรดติดต่อเรา ทีมสนับสนุน และรวมข้อมูลการวินิจฉัยทั้งหมด.