Leistungstest von neuer Version von FastReport .Net 2017.1.0

2016-12-14

Bei der Veröffentlichung neuer Version von FastReport.Net 2017.1.0 bekommen Sie eine wesentliche Beschleunigung bei der Erstellung und beim Export vom Bericht. Außerdem ist der Verbrauch vom Gedächtnis Ressourcen abgestiegen. In diesem Artikel geht es um den Vergleich von den „neuen“ und „alten“ Versionen gemäß diesen Parametern.

Testen Methode.

Beim Testen erstellen wir den Bericht und exportieren wir ihn in mehrere Formate: PDF, XLSX, HTML mit der schichtorientieren Methode (denn verwendet man diese Methode in Web Berichten.)

При этом измеряется время экспорта и размер полученного файла. Сначала проведем тестирование для версии 2016.4.0, затем - для новой 2017.1.0.

Auch speichert man die Zeit vom Export und die Größe von erhaltener Datei und weiter analysiert.

Nehmen wir eine populäre Berichts Schablone Master-Detail und einen XML Datenlager.

Dazu verwenden wir nicht so komplizierte Anwendung:

 

Hier Multi Page ist ein standardisierter mehrseitiger Bericht und Unlimited Page ist der Bericht mit der aktivierten Eigenschaft UnlimitedHeight. Wir verwenden zwei fast gleiche Berichte, aber ein von denen diese „unendliche“ Seite hat. Hier merkt man, dass die Größe von Bericht mit den 100 Megabytes beschränkt wird. Wenn diese Beschränkung übergenommen wird, werden neue Seiten erstellt.

Um einen unendlichen Bericht zu machen, eröffnen wir ihn im Designer. Im Inspektor der Eigenschaften wählen wir die Berichts Seite und stellen wir die Eigenschaft UnlimitedHeight=true ein oder UnlimitedWidth=true, wenn Sie unendliche Breite brauchen.

Für die Abmessungen verwenden einen Profiler, der ins FastReport integriert wurde:

Profiler.Start(); - für den Start.

Profiler.Stop(); - stoppen und die Ergebnisse von den Abmessungen zeigen.

Starten wir jetzt jeden Export und notieren die Ergebnisse der Arbeit vom Profiler. Die Ergebnisse zeigt der Profiler in messagebox:

 

Ergebnisse den Abmessungen

Für den standardisierten Bericht ist die Zeit allgemein abgestiegen. Aber ist dennoch die Zeit beim Export gestiegen. Wahrscheinlich sind keine alle Optimierung Handlungen beenden.

 

Für den mehrseitigen Bericht ist der Verbrauch vom Gedächtnis abgestiegen.

 

Und was ist mit dem „unendlichen“ Bericht? Hier ist die Situation widerholt. Die Zeit für die Erstellung von allen Berichten ist gesunken.

Der Gedächtnis Verbrauch ist auch stark gesunken. Für alle, außer PDF. Aber der Unterschied ist minimal.  

 

Und in der tabellarischen Form:

Abmessungen für die Version 2016.4.0

 

Multi page

Unlimited page

Größe, Kb

Zeit, ms

Größe, Kb

Zeit, ms

Prepare

1336

875

4040

875

PDF

87396

7031

81986

7220

XLSX

23092

1547

18784

1734

HTML

7354

2897

50576

1954

Measurements version 2017.1.0

 

Multi page

Unlimited page

Größe, Kb

Zeit, ms

Größe, Kb

Zeit, ms

Prepare

1020

735

1088

703

PDF

85482

7167

82654

7149

XLSX

16512

1359

16228

1640

HTML

2445

2725

9180

1890

Wie wir sehen, ist die Situation in der neuen Version verbessert. Der Verbrauch vom Gedächtnis für den HTML Bericht mit unendlicher Seite mehr als in fünf Mal gesunken! Das sind meinst verwendete Bericht für Web.

 

Was ist drin geändert?

In den Versionen kleiner als 2016.4.4 verwendet man die Methode ExportPage. Er erhält die ganze Seite, macht einen Gang durch alle Objekte und speichert sie ins gewählte Format.

Weiter löscht man diese Seite vom Gedächtnis und nimmt nächste.

Wenn Sie einen nicht so großen Bericht haben, dann merken Sie keine Probleme. Aber mit der Veröffentlichung von „unendlichen“ Seiten, erscheinen die Schwierigkeiten mit dem Gedächtnis Verbrauch.

Auf diesen Gründen traf man eine Entscheidung, den Band orientierten Export zu organisieren. Das hilft, den Gedächtnis Verbrauch zu minimieren. Der Kern des Berichts Engine wurde geändert. Das Problem mit den Matrizen ist schon nicht gelöst, weil man diese Objekte nur auf einer Band lagert und diese Objekte solche Große haben, die steigen kann. Beim Testen sehen wir, dass jetzt man viel mehr weniger Ressourcen braucht, um einen Bericht mit den „unendlichen“ Seiten zu erstellen. Aber die Zeit für die Erstellung ist nicht wesentlich gestiegen. Nicht so wesentlich. Aber für den HTML Export bekommt man gute Ergebnisse und für die Kunden, die Web Berichte verwenden, sind das wirklich gute Nachrichten.  

 

12. August 2024

Erstellen und Installieren des Postgres-Plugins in FastReport .NET

In diesem Artikel wird beschrieben, wie Sie mit dem FastReport .NET-Plugin für den Berichtsdesigner aus Visual Studio über den NuGet-Server eine Verbindung zur Datenbank herstellen.
8. August 2024

Installation von FastReport .NET und ihren Komponenten unter Windows

Schritt für Schritt Anleitung zur Online- und manuellen Installation über den Registrierungscode FastReport .NET und seine Komponenten in Windows.
26. Juli 2024

Aktualisierung von HTMLObject als Plugin für FastReport .NET

Ausführliche Anleitung zur Verwendung des neuen HTMLObject-Plugins, das die Aufteilung des HTML-Doms in FastReport-Berichtsobjekte verwendet.
Fast Reports
  • 800-985-8986 (Englisch, die USA)
  • +4930568373928 (Deutsch)
  • +55 19 98147-8148 (Portugiesisch)
  • info@fast-report.com
  • 901 N Pitt Str #325 Alexandria VA 22314

© 1998-2024 Fast Reports Inc.