In diesem Beitrag vergleiche ich die Synology DS216+II mit der Synology DS920+. Typischerweise wird bei einer NAS die Performance als Fileserver getestet. Eine NAS kann aber deutlich mehr. Dieser Test vergleicht daher die beiden Systeme im Betrieb als WordPress-Server. Aber wie kam es zu dem Test DS216+II vs. DS920+?
Seit drei Jahren betreibe ich meine DS216+II als File- und Web-Server. Das System ist mit 8GB RAM und zwei schnellen 4TB Festplatten ausgebaut und lief immer performant und stabil. Ich habe mich in der Zeit besonders der Optimierung des Webservers gewidmet. Da die Hardware der kleine DS216+II nicht weiter ausgebaut werden konnte, freute ich mich über den geringen Strombedarf und optimierte die Software. Wie ich die WordPress Installation aufgesetzt habe, kann man hier nachlesen.
Wie in diesem Jahr die DS1621xs vorgestellt wurde, kam ich ins grübeln. Vielleicht doch mal eine neue Hardware? Eine NAS mit einer XEON CPU, das wär doch was. Aber der Preis und der Stromverbrauch haben mich dann schnell wieder auf den Boden geholt. Ich habe mich dann aber trotzdem mal umgeschaut, was Synology sonst noch zu bieten hat. Und ja, da gab es die neue DS920+ und die 1621+.
Hardware Ausstattung DS 216+II, DS920+ und DS1621+
In der Tabelle habe ich die wesentlichen Unterschiede zur DS216+II aufgeführt:
DS216+II | DS920+ | DS1621+ | |
---|---|---|---|
CPU | Intel N3060 | Intel J4125 | AMD Ryzen 1500B |
CPU Kerne | 2 | 4 | 4 |
CPU Taktfrequenz | 1600MHz | 2000MHz | 2200 MHz |
CPU Cache | 2MB (L2) | 4MB (L2) | 4MB (L3) |
Speicher-Kanäle | 1 | 1-2* | 1-2* |
Speichergröße | 2MB – 8MB* | 4MB-8MB* | 4MB-32MB* |
Speichertype | DDR3L-1600 | DDR4-2400 | DDR4-2400 |
Speicherdurchsatz 1|2 Kanäle | 12,8GB/s | — | 19,2GB/s | 38,4GB/s* | 19,2GB/s | 38,4GB/s* |
Ethernet | 1 * 1GE | 2*1GE | 4*1GE + 1*10GE* |
Die beiden aktuellen Modelle haben eine vier Kern CPU mit höheren Takt und schnellen DDR4 Speicher. Da ich in meiner Anwendung kein schnelleres Ethernet benötige und vermutlich auch nicht die Option auf 32MB Dual Channel Speicher benötige, habe ich mich für die kleinere DS920+ entschieden.
Teststrategie DS216+II vs. DS920+
Natürlich wollte ich wissen, ob die DS 920+ meine WordPress Webseite besser hosten kann. Die zwei zusätzlichen CPU Kerne kommen vermutlich bei einzelnen Webseitenabrufe nicht zu tragen. Aber der 25% höhere CPU Takt und der 50% höhere Speicherdurchsatz sollte sich doch bemerkbar machen, oder?
Ich habe die DS216+II und die DS920+ in drei Szenarien verglichen.
- Ladezeit einer Einzelseite
- Ladezeit aller gehosteten Seiten
- Laststest mit 10.000 Clients
Vor jedem Testdurchlauf habe ich die Caches in WordPress gelöscht. Somit ist sichergestellt, dass die Seiten neu erzeugt werden.
Webpagetest von Catchpoint
Um die Ladezeit einer einzelnen Seite zu testen nutze ich gerne die Pingdom Tools, da es einen schnellen Überblick gibt. Für eine tiefere Analyse gefällt mir der Webpagetest von Catchpoint besser. Catchpoint führt den Test immer dreimal durch und zieht das Median für das Ergebnis heran. Es stehen aber alle Einzelwerte für die Analyse zur Verfügung. Für den Vergleich der beiden NAS Systeme habe ich daher den Webpagetest genutzt.
Messwerte mit leeren Cache
Beide Geräte habe ich jeweils dreimal getestet. Zunächst schauen wir uns die Ergebnisse mit leeren WordPress Cache an und betrachten daher erstmal nur den ersten Run des Tools.
DS216+II | DS920+ | |||||
---|---|---|---|---|---|---|
Testlauf | 1 | 2 | 3 | 1 | 2 | 3 |
Initial Connect. | 49ms | 49ms | 49ms | 53ms | 49ms | 49ms |
SSL Negotiat. | 70ms | 77ms | 72ms | 67ms | 66ms | 66ms |
First Byte | 741ms | 542ms | 633ms | 543ms | 395ms | 388ms |
Start Render | 1100ms | 900ms | 900ms | 800ms | 700ms | 700ms |
Speed Index | 1100ms | 900ms | 917ms | 800ms | 700ms | 700ms |
Largest Contentful Paint | 1065ms | 848ms | 932ms | 815ms | 678ms | 665ms |
Um die Geräte zu vergleichen habe ich von beiden Geräten jeweils den mittleren Lauf herangezogen, um Ausreißer auszufiltern:
DS 216+II | DS920+ | ||
---|---|---|---|
Median | 3. Testlauf | 2. Testlauf | neg → DS920+ schneller pos → DS216+II schneller |
Initial Connection | 49ms | 49ms | 0% |
SSL Negotiation | 72ms | 66ms | -8,3% |
First Byte | 633ms | 395ms | -37,6% |
Start Render | 900ms | 700ms | -22,2% |
Speed Index | 917ms | 700ms | -22,3% |
Largest Contentful Paint | 932ms | 678ms | -27,3% |
Bewertung der Messergebnisse
Der Initial Connection Wert spiegelt den TCP Aufbau wieder. Dieser ist für die CPU billig und hängt im wesentlichen von der Round Trip Zeit im Internet ab. In meinem Aufbau sind die beiden NAS über eine VDSL Verbindung ans Internet angebunden. Mittels tracert habe ich für den ersten Knoten eine Ping Zeit von typisch 13ms.
Die SSL Negotiation ist rechenintensiv und die DS920+ kann mit ihrem höheren CPU Takt glänzen. Die DS920+ ist gut 8% schneller. Mit TLS 1.3 werden die getrennten Phasen TCP Aufbau und TLS Verhandlung zusammen gelegt, wodurch einmal die Roundtrip Zeit der Verbindung gespart. Mit DSM 7.0 wird dieses Feature kommen.
First Byte, gibt den Zeitpunkt an, wann die Applikation das erste Datenbyte vom WordPress Server empfangen hat. Hier ist die DS920+ um 37% schneller. Entsprechend ist die DS920+ auch in den den Werten Start Rendering (22%) und Largest Contentful Paint (27%) die schnelle NAS. Gerade der Wert Largest Contentful Paint ist ein wichtiger Wert für die Google Bewertung. (Web Vitals).
Messwerte mit gefüllten Cache
Wer einen Blog oder eine Webseite mit statischen Inhalt betreibt, kann mit einem Cache Plugin die aufwendige PHP Rechenzeit und eventuell auch das komprimieren der Daten (gzip) vor den Seitenabruf verlagern. Hierzu betrachten wir nun die Werte aus dem 2. Run des Webpagetests. Durch den ersten Run ist der Cache bereits gefüllt. Die Werte Initial Connection und SSL Negotiation werden nicht durch den Cache beeinflusst. Sie werden daher nachfolgend nicht mehr betrachtet.
DS216+II | DS920+ | |||||
---|---|---|---|---|---|---|
Testlauf | 1 | 2 | 3 | 1 | 2 | 3 |
First Byte | 468ms | 220ms | 213ms | 223ms | 222ms | 221ms |
Start Render | 800ms | 500ms | 600ms | 500ms | 500ms | 500ms |
Speed Index | 800ms | 518ms | 600ms | 500ms | 518ms | 500ms |
Largest Contentful Paint | 765ms | 532ms | 540ms | 499ms | 482ms | 482ms |
Auch bei diesen Werten vergleichen wir wieder die mittleren Läufe der beiden NAS Systeme:
DS 216+II | DS920+ | ||
---|---|---|---|
Median | 3. Testlauf | 2. Testlauf | neg → DS920+ schneller pos → DS216+II schneller |
First Byte | 213ms | 222ms | +4,2% |
Start Render | 600ms | 500ms | -16,7% |
Speed Index | 600ms | 518ms | -13,7% |
Largest Contentful Paint | 540ms | 482ms | -10,7% |
Durch die Cache Vorberechnungen wird der Rechenaufwand insgesamt geringer. Somit wird der Vorteil der schnelleren CPU des DS 920+ auch geringen und der Abstand schmilzt. Auffällig ist, dass die DS216+II im mittelschnellen Durchlauf die geringste Zeit für First Byte hatte. Der Abstand von 4% dürfte aber durch Streuungen der Internet Laufzeiten zustande kommen.
Der Geschwindigkeitsgewinn für den Wert Start Render schmilzt bei warmen Cache auf knapp 17%. Und der Wert Largest Contentful Paint sogar auf gut 10%. Dies zeigt, dass die DS920+ insgesamt Seiten schneller ausliefern kann.
Messung Ladezeit aller Seiten mittels Integrity
Im nächste Schritt möchte ich die Ladezeit betrachten, wenn alle Seiten meine Web-Page herunter geladen werden. Meine Web-Page hatte zum Testzeitpunkt 2648 Seiten. Der Test sollte nun alle Seiten in einem Durchgang herunterladen. Hierzu benutzte ich den Link-Checker Integrity v9 von PeacockMedia. Das Tool ist kein Performance Tool im eigentlichen Sinne, sonder prüft alle internen und externen Links einer Web-Page. Aufgrund der hohen Seitenzahl und der wenigen externen Links, kann man davon ausgehen, dass die Testdauer mit Integrity signifikant von der HW-Performance beeinflusst wird.
Das Tool lief auf einem MacBookAir im LAN. Somit sind Einflüsse durch Internetlaufzeiten so gut wir ausgeschlossen. Beide NAS Systeme wurde am selben Tag vermessen, um weitere Unterschiede durch die externen Links klein zu halten. Ich habe jeweils zwei Durchläufe gemacht. Der erste mit gelöschten Cache und der zweite mit warmen Cache.
DS 216+II | DS920+ | neg → DS920+ schneller pos → DS216+II schneller | |
---|---|---|---|
Kalter Cache | 5:39,9 | 2:38,1 | -53,5% |
Warmer Cache | 2:57,1 | 2:31.4 | -14,5% |
Bei gelöschten Cache ist die DS920+ mehr als doppelt so schnell und erreicht fast die Zeit wie mit gefüllten Cache. Mit warmen Cache ist die DS920+ nochmal 7 Sekunden schneller und 14,5% schneller verglichen mit der DS216+II.
Zu beachten ist, dass der Link Checker die Seiten nicht rendert und es sich um die reinen Ladezeiten aller Seiten handelt.
Lasttest mit 10.000 Clients
Beim Lasttest wird eine Seite von sehr vielen Clients angefordert und geladen. Dieses Szenario ist für einen am DSL Anschuss betriebenen Web-Server sehr kritisch, da hier die Internet Anbindungen der wichtigste Faktor ist und schnell zum Flaschenhals wird.
Testumgebung für den Lasttest
Für den Test habe ich eine Super Vectoring VDSL Anschluß mit 250Mbit/s Download und 40Mbit/s Upload verwendet. Durch die hohe Download Rate können erheblich mehr Anfragen an den Web-Server gestellt werden, als er über die Leitung auch beantworten könnte. Wenn wir mal von einer sehr kleinen Web-Seite mit 100kB ausgehen, könnten theoretisch ~50 Anfragen in einer Sekunde beantwortet werden (50s-1*100kB = 5000kB/s ≈ 40Mbit/s). Theoretisch deshalb, da jede Verzögerung bei der Request Verarbeitung zum Stau und letztendlich Datenverlust führen kann. Wenn eine Seite erst aufwendig berechnet werden muss, oder die Daten erst von einer Harddisk geladen werden müssen, werden diese Verzögerung die maximale Anzahl zu verarbeitende Request deutlich mindern.
Einflußgrößen für Lasttest
Somit ist klar, dass für eine hohe Stressresistenz des Webservers viele Faktoren zu optimieren sind:
- Uploadrate des Internetzugangs erhöhen
- Größe der Webseiten minimieren
- Bereitstellungszeit der angeforderten Webseite minimieren
Die Uploadrate ist oft nur schwer zu verbessern. Wer schon einen DSLer mit 40Mbit/s hat, kann diese nur noch durch einen Glasfaseranschluss erhöhen. Dieser ist aber vielerorts (noch) nicht verfügbar.
Die Größe der Webseite kann durch ein smartes Web-Design und durch Komprimierung enorm verkleinert werden. Dies soll aber nicht in diesem Artikel betrachtet werden. Insbesondere wurde für den Vergleichstest darauf geachtet, dass für beide NAS Systeme die Webseiten identisch groß waren.
Der dritte Punkt, die Bereitstellungszeit einer Webseite, ist im wesentlichen von der Rechenleistung, dem I/O Durchsatz und dem Speicherdurchsatz abhängig. Die DS920+ hat doppelt so viele CPU Kerne, die auch noch 400MHz schneller getaktet sind. Ob die CPU Power sich auch im Lasttest DS216+II vs. DS920+ bemerkbar macht?
Praktischer Test und Ergebnisse
Mit dem Online Tool loaderio von SendGrip Labs kann man Lasttests auf öffentlich zugänglichen Webseiten durchführen. Es gibt eine freien Testplan der maximal 10000 Clients pro Test unterstützt. Dies reicht für unser Vorhaben vollkommen aus. Nachfolgend sind die Ergebnisse der beiden NASe für eine Testzeit von 40 Sekunden mit 10.000 Clients abgebildet. Zu beachten ist, dass nicht die vollständige Seite sondern nur der HTML Code geladen wird (hier ca. 17kB).
Beide Systeme liefern ein nahezu gleiches Ergebnis. Wobei die DS216+II am Anfang einen etwas kleiner Peak zeigt und die durchschnittliche Antwortzeit unter 800ms bleibt. Der Peak in den beiden Grafen zeigt den Stau, der durch die erstmalige Bereitstellung der HTML Seite und die kontinuierlichen neuen Request auftritt. Eine Optimierung hätte zum Ziel, diesen Peak zu verkleinern. Perfekt wäre eine glatte Linie.
Fazit des Vergleichs DS216+II vs. DS920+
Im Vergleichstest wurde deutlich, dass die deutlich schnelle CPU der DS920+ auch die Webanwendung deutlich beschleunigt. Gerade Anwendungen die dynamisch Seiten erstellen profitieren sehr. Aber auch rein. statische Seiten die sehr effektiv gecachet werden können sind signifikant schneller.
Bei einer anstehenden Neuanschaffung, kann man die DS920+ sehr empfehlen. Insbesondere bekommt man die Möglichkeit auch NVME Cache Module einzusetzen und hat schon im Werkszustand 4GB Hauptspeicher. Ob sich ein Umstieg von einer DS216+II lohnt, muss natürlich jeder selbst entscheiden. Ich bin jedenfalls froh, dass ich den Umstieg gemacht habe.