نیازمندی های حافظه
Aspose.Words طیف گسترده ای از ویژگی ها را برای کار با اسناد در فرمت های مختلف فراهم می کند. مهم است که توجه داشته باشید که هیچ محدودیتی در حداکثر اندازه یک فایل سند وجود ندارد که Aspose.Words می تواند پردازش یا ارائه دهد. تنها محدودیت مقدار RAM (حافظه) موجود در کنار شماست.
چه مقدار حافظه Aspose.Words نیاز دارد
معمولا Aspose.Words برای ساخت یک مدل از سند در حافظه به حافظه چند برابر بیشتر از اندازه سند نیاز دارد. به عنوان مثال، اگر اندازه سند شما 1 MB باشد، Aspose.Words برای ساخت مدل شیء سند خود (DOM) در حافظه به 10-20 MB ازRAM نیاز دارد. ضریب به فرمت بستگی دارد زیرا برخی از فرمت ها جمع و جورتر از بقیه هستند. به عنوان مثال ،DOCX جمع و جورتر از DOC و RTF است و DOC جمع و جورتر از RTF است.
هیچ راهی دقیق برای برآورد مقدار حافظه Aspose.Words در واقع در طول پردازش هر فایل سند خاص مصرف نمی شود. همانطور که ممکن است بدانید Java داده ها را در کلاس ها ذخیره می کند، هر نمونه کلاس از حافظه ای برای اهداف داخلی JVM (Java ماشین مجازی) استفاده می کند. بنابراین هر پاراگراف یا متن فرمت شده (حتی از یک کاراکتر تشکیل شده است) پس از بارگذاری در DOM حافظه اضافی می گیرد. علاوه بر این، موتور جمع کننده زباله Java از یک الگوریتم پیچیده برای تعیین بهترین زمان برای انجام مجموعه حافظه استفاده می کند و تعیین مصرف واقعی حافظه را دشوار می کند.
نحوه محاسبه میزان حافظه
بیایید دو سند را در نظر بگیریم:
- DOCX “A” سند - 0.35 MB اندازه (2 هزار صفحه)، فقط متن
- DOCX “B” document - 0.35 MB size (فقط 1 صفحه)، با PNG image inside
همانطور که می دانید، بسیاری از فرمت های مدرن مانند DOCX، ODT و غیره. ساده هستند ZIP بایگانی. بنابراین، ما الگوریتم محاسبه زیر را دریافت می کنیم:
- باز کردن. سند باز شده “A” دارای 20 MB اندازه، سند “B” دارای 0.4 MB اندازه
- بارگذاری سند به مدل (ساخت مدل شیء سند آن - DOM):
- ایجاد DOM سند اول “A” نیاز به 49 MB اندازه دارد
- ایجاد DOM سند دوم “B” فقط به 2 MB اندازه نیاز دارد.
- اندازه گیری مقدار حافظه مورد نیاز برای ارائه این اسناد به PDF. برای این عملیات، Aspose.Words نیاز به:
- 294 MB برای سند “A”
- 7 MB برای سند “B”
بنابراین، همانطور که می بینید، هیچ وابستگی خطی به اندازه سند ورودی وجود ندارد. عوامل زیادی وجود دارند که می توانند بر اندازه مورد نیاز RAM تأثیر بگذارند – قالب سند، پیچیدگی و ساختار آن، تعداد تصاویر و قالب آنها و بسیاری از عوامل دیگر.
نحوه محاسبه دقیق ترین ضریب حافظه
آزمایشات با هزاران سند واقعی نشان می دهد که به طور معمول Aspose.Words نیاز به چندین برابر حافظه بیشتر از اندازه سند متوسط برای ساخت یک مدل سند در حافظه و انجام عملیات ساده مانند تبدیل بین فرمت های جریان، mail merge، تجزیه، جایگزینی و غیره دارد. گاهی اوقات ما در مورد ضریب 2 و گاهی اوقات 20 صحبت می کنیم.
عملیات پیچیده تر مانند رندر (تبدیل به فرمت های صفحه ثابت)، به روز رسانی زمینه ها، تقسیم صفحه و دیگران، برای برخی از اسناد به 20 برابر منابع بیشتری نسبت به حافظه اختصاص داده شده توسط سند بارگذاری شده در Aspose.Words DOM نیاز دارد.
اگر نتایج پروفایل سازی شما نشان دهنده یک مشکل حافظه احتمالی در Aspose.Words است، لطفا با ما تماس بگیرید تیم پشتیبانی و شامل تمام اطلاعات تشخیصی.