Požadavky na paměť
Aspose.Words poskytuje širokou škálu funkcí pro práci s dokumenty v různých formátech. Je důležité poznamenat, že neexistuje žádný limit maximální velikosti dokumentu souboru, který Aspose.Words může zpracovat nebo renderovat. Jediné omezení je množství RAM (paměti) dostupné na vaší straně.
Kolik paměti Aspose.Words Potřeby
Obvykle Aspose.Words potřebuje několikkrát více paměti než velikost dokumentu pro sestavení modelu dokumentu v paměti. Například, pokud je velikost dokumentu 1 MB, Aspose.Words potřebuje 10-20 MB RAM k vybudování Document Object Model (DOM) v paměti. Násobitel závisí na formátu, protože některé formáty jsou kompaktnější než jiné. Například DOCX je kompaktnější než DOC a RTF a DOC je kompaktnější než RTF.
Neexistuje žádný přesný způsob, jak odhadnout, kolik paměti Aspose.Words vlastně spotřebuje během zpracování jakéhokoliv konkrétního dokumentu. Jak možná víte .NET ukládá data ve třídách, každá třída používá určitou paměť pro interní účely CLR. Takže jakýkoliv odstavec nebo formátovaný text (i když se skládá z jednoho znaku) má po načtení do DOM. Navíc .NET Odpařovací motor používá složitý algoritmus k určení nejlepšího času k provedení sbírky paměti, což ztěžuje určení skutečné spotřeby paměti.
Jak vypočítat množství paměti
Nechť zváží dva dokumenty:
- dokument DOCX “A” 0.35 MB velikost (2 tisíce stran), pouze text
- dokument DOCX “B” 0.35 MB velikost (pouze 1 strana), s PNG obraz uvnitř
Jak víte, mnoho moderních formátů jako DOCX, ODT, atd. jsou jednoduché ZIP archivy. Takže dostaneme následující výpočetní algoritmus:
- Odklopení. Rozbalený dokument “A” má velikost 20 MB, dokument “B” má velikost 0,4 MB
- Načítání dokumentu do modelu (budování jeho Document Object Model - Co? DOM):
- Vytvoření DOM z prvního dokumentu “A” vyžaduje velikost 49 MB
- Vytvoření DOM z druhého dokumentu “B” vyžaduje pouze 2 MB velikost.
- Měření potřebného množství paměti pro uvedení těchto dokumentů do PDF. Pro tuto operaci, Aspose.Words vyžaduje:
- 294 MB pro dokument “A”
- 7 MB pro dokument “B”
Jak vidíte, není lineární závislost na velikosti vstupního dokumentu. Existuje mnoho faktorů, které mohou ovlivnit požadovanou velikost RAM formátu dokumentu, jeho složitost a strukturu, počet obrázků a jejich formát, a mnoho dalších faktorů.
Jak nejlépe vypočítat násobič paměti
Experimenty s tisíci reálných dokumentů ukazují, že obvykle Aspose.Words vyžaduje několikrát více paměti, než je průměrná velikost dokumentu, aby se vytvořil model dokumentu v paměti a provádět jednoduché operace, jako je konverze mezi formáty průtoku, mail merge, Parse, náhradní, a tak dále. Někdy mluvíme o násobku 2 a někdy 20.
Složitější operace, jako je renderování (přeměna na pevné formáty stránek), aktualizace polí, rozdělení stránky, a další, pro některé dokumenty vyžadují 20 krát více zdrojů než paměť přidělená dokumentem nahrán v Aspose.Words DOM.
Pokud výsledky profilování naznačují možný problém paměti v Aspose.Words, prosím kontaktujte naše Technická podpora a zahrnout všechny diagnostické informace.