Anzeige
Anzeige
Software & Entwicklung
Artikel merken

Das freie CMS beim größten Sportportal Österreichs sport1.at: Extremsport TYPO3-Performance

Mit rund 19 Millionen Seitenabrufen und zwei Millionen Besuchern pro Monat ist sport1.at das mit Abstand größte Sportportal Österreichs. Sportergebnisse aus aller Welt im Minutentakt per Web und auf mobile Geräte fordern Redaktionsteam, Hardware, Systemperformance und externe Partner. Ein Jahr Redaktionsarbeit mit TYPO3 und IBM Power 5 im hochperformanten Produktiveinsatz brachten sport1.at unter die Top 10 der meistbesuchten Medien-Sites des Landes. Dabei wurden nicht selten alle Ressourcen bis an die Grenzen ausgereizt.

9 Min. Lesezeit
Anzeige
Anzeige

Bei klassischen Websites werden Inhalte zumeist direkt auf einer Seite erstellt und dort publiziert. Zusätzlich kommen oft spezielle Content-Elemente wie News, Events oder Produkte zur Verwendung, die nach Kategorien verwaltet und ebenfalls angezeigt werden. Nicht so bei einem Newsprovider wie Sport1. Der redaktionelle Prozess und der Publikationsvorgang sind dabei sowohl organisatorisch als auch technisch getrennt abgebildet und entsprechen eher dem einer klassischen Printpublikation. Folgende Vorgaben galt es dabei zu erfüllen:

  • Inhalts-Rubrizierung in 700 verschachtelte Themenbereiche
  • Komplette Trennung der redaktionellen Arbeit von der Darstellung der Inhalte auf der Website
  • Kombination aus manueller sowie automatischer Positionierung und Anzeige der Inhalte
  • Workflow mit Versionierung und Redaktionsbereich mit Vorschau-, Positionierungs- und Freigabeprozess
  • Durchgehende Meta-Information zur Steuerung der Exporte in Teletext, mobile Portale, RSS-Feeds etc.

Trennung von Redaktionsbereich und Präsentation

Anzeige
Anzeige

Die Redakteure der Fachbereiche (Sportarten) verwalten News, Meldungen und Diashows im jeweiligen Unterbaum des Fachbereichs. Dieser themenzentrierte Ansatz bietet den Redakteuren den notwendigen Überblick über alle zu dem jeweiligen Thema erstellten Inhalte, sowohl zur Themenrecherche als auch zur einfachen Verlinkung auf alte Meldungen und News.

Die anwenderfreundliche Abbildung der fast 700 Rubriken (Themen) ist in einer klassischen Listen- oder Kategorienauswahl nicht möglich. Daher wurde der TYPO3-Seitenbaum um Rubriken erweitert, die zusätzlich automatisch mit der Struktur im Digital Asset Management (Bilder) synchronisiert werden. Daraus ergibt sich für die Redaktion eine einheitliche Struktur, die thematische Einpflege und das Auffinden von Text- und Bildressourcen werden erleichtert. Zusätzlich kommen diese 700 Rubriken bei der automatischen Erstellung von „verwandten News und Meldungen“ und den Exports zur Syndizierung zur Verwendung.

Anzeige
Anzeige

Aus Copyright- und Syndizierungsgründen müssen die rund 5.000 im Monat entstehenden Bilder mit einer Quellenangabe und Schlagworten versehen werden. Dafür wurde eine angepasste Version des Digital Asset Management (DAM) eingesetzt und um eine automatische Unzip-Funktion erweitert. Dadurch wird das Einspielen von Diashows zum Kinderspiel.

Anzeige
Anzeige

Die Positionierung einzelner Artikel auf Start- und Themenseiten erfolgt im zweiten Schritt durch die Chefredaktion, ähnlich dem Setzen bei Tageszeitungen. Dabei wählt die Chefredaktion im Seitenmodul zuerst die Position eines Teasers und anschließend über den Elementbrowser die Zielmeldung aus. Zusätzlich kann direkt in der Seitenübersicht die Bild-Darstellung (groß/ klein/ nur Text) des Teasers bestimmt werden.

Um die neuesten und wichtigsten Meldungen passend präsentieren zu können, hat der Chefredakteur die Möglichkeit, Teaser und Aufmacher mittels Drag & Drop auf der Seite beliebig zu positionieren.

Anzeige
Anzeige

Der Freigabeprozess

Die Änderungen während der Einpflege und Neupositionierung dürfen nicht gleich auf der Site sichtbar sein, sondern werden zuerst im redaktionellen Workspace vorbereitet. Erst nach erfolgter Überprüfung publiziert die Redaktion die Änderungen vom Workspace in die Live-Website.

Das TYPO3-Modul „Workspaces“ wurde dabei so konfiguriert, dass sich die Versionierung für den Redakteur transparent darstellt. Dieser muss neue Versionen nicht manuell anlegen, da das System bei jeder Änderung automatisch eine neue Version erstellt, die anschließend zur Liveschaltung bereitsteht.

Die Positionierung von Teasern erfolgt mittels Drag & Drop.

dms_7e925a26444f4d13332ed74fc8e9f4a9

Die Rubrizierung ermöglicht automatisch passende Linkboxen, Diashows und Videos.

Die hohe Anzahl an Redakteuren und die häufigen Änderungen der Inhalte führten dazu, dass die Publizierungsübersicht mitunter über 130 einzelne Änderungen zeigte und damit unübersichtlich wurde. Daher wurde das Modul „Workspaces“ um zwei neue Funktionen erweitert: „zeige meine/alle Änderungen“ und „alle Elemente einer Seite publizieren“. Mit diesen Erweiterungen konnte der Publikationsprozess zusätzlich vereinfacht werden.

Anzeige
Anzeige

Syndizierung auf allen Kanälen

Die News-Angebote von unterschiedlichen TV-Sendern, Newsportalen und GSM-Providern werden kostenpflichtig mit verschiedenen Feeds bedient. Derzeit greifen Pro7 Austria, ATV, Chello, BA-CA und mobile Portale der Mobilfunkbetreiber auf aktuelle Sportnachrichten von sport1.at zurück. Die in TYPO3 verwalteten News, Meldungen und Diashows werden dafür syndiziert und in unterschiedlichste Kanäle und Formate wie Teletext, XML, Live-Ticker, mobile Portale und RSS-Feeds überführt. Dabei kommen mehrere Export-Extensions zur Verwendung, die unter Berücksichtigung der Rubrizierung und der DAM-Meta-Information unterschiedliche Export-Formate bereitstellen.

Performance ist (fast) alles

Nicht nur um dem Slogan „Der schnellste Sport im Netz“ von sport1.at gerecht zu werden, waren die Anforderungen an die Performance des Webauftritts hoch:

  • Bis zu 1.000.000 Seitenaufrufe (PIs) pro Tag
  • Lastspitzen von bis zu 250 PIs/Sekunde bzw. 15 Mbit/Sekunde abends und bei Live-Übertragungen von Sport-Events
  • Bis zu 30 parallel einpflegende Redakteure
  • Laufender Export von neuen Artikeln für die alternativen Kanäle wie Teletext, SMS und RSS-Feeds

Der Einsatz eines PHP-Optimizer, die Vermeidung von nicht zwischenspeicherbaren Extensions (USER_INT) und die optimale Konfiguration des Caching-Verhaltens von TYPO3 waren nicht ausreichend, um den Anforderungen gerecht zu werden.

Anzeige
Anzeige

Bei „normalen“ Websites sind bis zu 90 Prozent der Inhalte relativ statisch und erlauben ein Caching von bis zu 24 Stunden und mehr. Nicht so jedoch bei einer Website, die zu mehr als 95 Prozent stunden- bzw. minutenaktuelle Information anbietet. Dafür ist eine Cache-Dauer von maximal 60 Sekunden nötig.

Statische Datei-Caches, wie vom TYPO3-Core und von diversen Caching-Extensions angeboten, konnten nicht genutzt werden, da die Aktualisierung von bis zu 30.000 Seiten (100.000 Content-Elemente) zu zeitaufwendig gewesen wäre.

TYPO3 bietet seit Version 3.8 die Möglichkeit, über Cache-Header einen Reverse-Proxy-Server anzusteuern. Dabei werden alle Seitenanfragen zunächst vom Proxy-Server entgegengenommen. Sofern keine neue Version der Seite in TYPO3 vorliegt, liefert der Proxy-Server die vorgehaltene Version an den Client aus. Dieser Mechanismus wurde um zusätzliche Cache-Header erweitert, um zwischen der TYPO3-Cache-Dauer und der Client- bzw. Proxy-Cache-Dauer unterscheiden zu können (Cache-Control: „max-age“ und „expires“). Damit kann die Redaktion fein granuliert die Aktualität aller Inhalte auf Seiten- oder Baumebene bestimmen.

Anzeige
Anzeige

Der große Vorteil dieses Setups ergibt sich aus der automatischen Dynamik der Applikationsnutzung. Nicht oder selten besuchte Inhalte werden fast „ignoriert“, viel besuchte und daher wirklich relevante Seiten hingegen liegen permanent im Cache des Reverse-Proxy (und im TYPO3-Cache) und können daher in wenigen Millisekunden an den Client ausgeliefert werden.

Ein klassisches Caching-Problem stellten die bei jedem Artikel angezeigten „verwandten“ News dar. Der Bericht selber ändert sich nach der Erstellung nur noch selten, jedoch sollen neue, themenverwandte News aktuell zu jeder Meldung angezeigt werden. Diese Änderungen „sieht“ das TYPO3-Caching jedoch nicht und liefert daher eine alte Version der Seite aus. Die Löschung des TYPO3-Cache beim Hinzufügen neuer News war bei Sport1 wegen der hohen Seitenzahl mit verwandten News nicht machbar.

Daher wurden zusätzlich spezielle „Spider“ entwickelt, die den Seiten-Cache von TYPO3 und den des Proxyservers laufend aktualisieren. Diese Spider durchlaufen dabei in konfigurierbaren Intervallen unterschiedlich wichtige Seiten oder Seitenbäume und garantieren so die geforderte Aktualität aller Inhalte.

Anzeige
Anzeige

Kein Launch ohne realistische Lasttests

Neben ausreichend guter Hardware und einer performanten Applikation sind realistische Performance-Tests der Garant dafür, nach dem Launch der Website keine Enttäuschung zu erleben. Tools wie Apache-Benchmark können zwar viel Last auf eine Handvoll Seiten erzeugen, liefern jedoch keine Informationen über den real zu erwartenden Ansturm. Grundvoraussetzungen für realitätsnahe Performance-Tests und -Optimierungen sind:

  • Use Cases (Teststellungen) für Besucher und Redaktion
  • Langzeit-Performance-Monitoring
  • Ein etablierter Test-Zyklus aus Tests und Monitoring, Analyse, Tuning und anschließend wieder Tests und Monitoring

Dafür wurden unterschiedliche Anwendungsszenarien für Besucher (Wie bewegen sich diese durch die Website?) und für die Redaktion (Wie nutzen diese das CMS?) erstellt. Aus den Logfiles der alten Applikation konnten zehn unterschiedliche Besucher-Teststellungen und fünf unterschiedliche Redaktionsvorgänge definiert werden.

Diese 15 Teststellungen wurden mit den Tools jMeter (Frontend) und Selenium (Backend) auf die erwartete Anzahl gleichzeitiger Besucher-Sessions „multipliziert“, sodass das System unter realitätsnaher Belastung getestet und die Performance mit dem Monitoring-Tool Ganglia gemessen werden konnte.

Anzeige
Anzeige
Das Open-Source-Tool Ganglia führt zentrale Performance-Messungen aller Server und Komponenten durch.

Das Open-Source-Tool Ganglia führt zentrale Performance-Messungen aller Server und Komponenten durch.

Daraus ergaben sich verschiedene Maßnahmen zur Performance-Steigerung wie der Einsatz von eAccelerator statt Zend Optimizer, der Tausch von Apache1 gegen Apache2, die Verwendung von Squid 2.6 statt 2.4, ein MySQL-Tuning (Konfiguration & Indizes), eine Optimierung der Datenbankanfragen von Extensions und TypoScript sowie diverse Konfigurationsanpassungen der Caching-Parameter. Mit diesen Änderungen konnte die Performance soweit gesteigert werden, dass das System voll dynamisch bis zu 400 Seiten/Sekunde ausliefern kann. Damit hat die Website ausreichende Reserven, um weiter ausgebaut zu werden.

Die verwendeten Scripts und Tools wie jMeter, Selenium und Ganglia bewiesen ihre Nützlichkeit nicht nur bei den Lasttests, sondern erlauben nun auch im Produktivbetrieb die Langzeitbeobachtung der Performance einzelner Komponenten.

Die Performance-Sorgen bei Liveübertragungen von Sport-Events (250 PIs/Sekunde) konnten durch realitätsnahe Tests schon vor dem Launch beseitigt werden. Zweifel bezüglich der Backend-Performance bei 30 zeitgleich arbeitenden Redakteuren wurden zusätzlich durch die Selenium-Tests aus dem Weg geräumt.

Ganglia bietet detaillierteste Performance-Information von der letzten Stunde bis zu 12 Monaten.

Ganglia bietet detaillierteste Performance-Information von der letzten Stunde bis zu 12 Monaten.

Virtualisierung statt Server-Friedhof

„Hoch performant, sehr flexibel, extrem zuverlässig, viel Luft für die Zukunft und eine einfache zentrale Wartung“, so wurden die Anforderungen an die neue Hardware beschrieben. Das alte CMS wurde auf zwei getrennten Server-Farmen (Redaktion und Produktion) mit mehr als 12 einzelnen Servern betrieben. Die Wartungskosten stiegen dabei direkt mit der Anzahl der Server. Daher wurde ein neues Hardware-Konzept für sport1.at beschlossen.

Die Entscheidung fiel nach ausführlicher Planung zugunsten redundant ausgelegter Hardware, ganz konkret ein IBM System p5 Modell 550 (& Modell 520 als Backup). Diese IBM-Server bieten neben qualitativ hochwertiger und redundanter Hardware-Ausstattung sowie echter Virtualisierung auch den bemerkenswerten Service, dass auftretende Störungen oder Probleme der Hardware automatisch an den Hersteller gemeldet und zumeist von diesem gelöst werden, noch bevor der Betreiber die Probleme bemerkt.

Mit dem Wechsel auf TYPO3, dem Redesign und der Neustrukturierung der Website, zusätzlichen neuen Funktionalitäten und der erwarteten Steigerung der Anwenderzahlen war zum Zeitpunkt der Hardwareplanung eine exakte Abschätzung der benötigten Hardware-Ressourcen im Detail nicht möglich. Insbesondere die Lastverteilung auf Datenbank-, Applikations-, File- und Reverse-Proxy-Server in Bezug auf CPU-, RAM- und Storage-Anforderungen konnte vor der Inbetriebnahme nur geschätzt werden. Bei einem klassischen Multi-Server-Setup werden nachträglich festgestellte Ressourcen-Engpässe meist durch zusätzliche Hardware kompensiert. Das verursacht neben den Kosten für die neue Hardware mitunter auch eine Downtime, zumindest aber einiges an Aufwand und einen erhöhten Wartungsaufwand.

Flexibilität und Leistung

Im gewählten virtualisierten Setup mit IBM System p werden ungenutzte Ressourcen (CPU/RAM) automatisch oder manuell dorthin verlagert, wo sie benötigt werden. Damit erreicht man nicht nur eine höhere Flexibilität im täglichen Betrieb, sondern sorgt auch dafür, dass es weder zu unter- noch zu überforderten Einzelapplikationen kommt. Darüber hinaus erhöht sich die Gesamtperformance der Applikationen, da Flaschenhälse vermieden werden und die Gesamtleistung des Systems besser genutzt wird.

Die Virtualisierung auf IBM System p erlaubt dabei eine komplette Trennung der Applikationsbestandteile: Proxy-, Web-, Datenbank- und File-Server in jeweils einzelnen logischen Partitionen (LPARs) innerhalb eines physischen Servers. LPARs entsprechen damit getrennten Servern und können unabhängig voneinander für den jeweiligen Zweck installiert, angepasst, konfiguriert und deren Performance getrennt beobachtet werden.

Wie erwartet zeigten die einzelnen LPARs in der Produktion ein etwas anderes Lastverhalten als ursprünglich geplant. Tatsächlich benötigten der Proxy- und der Fileserver weniger CPU und RAM, als ihnen zugesichert wurde. Diese Ressourcen können nun von Web- und Datenbankserver genutzt werden. Die dafür notwendigen Änderungen an garantierten CPU-, Memory- und Disk-Ressourcen wurden dabei, dank Virtualisierung, im laufenden Betrieb über die so genannte Hardware-Management-Console (HMC) durchgeführt.

Zentrale Administration

Der Systemadministrator kann dank der HMC alle virtuellen Partitionen der verschiedenen Server zentral verwalten. Dabei bleibt es ihm überlassen, die HMC physisch vor Ort, remote via GUI oder auf der Shell zu bedienen. Über die HMC können unter anderem neue LPARs hinzugefügt oder gelöscht, Hardware-Ressourcen (CPU, Memory, Storage) im laufenden Betrieb zwischen einzelnen LPARs verteilt, Betriebssystem-Updates und neue Firmware eingespielt sowie Backups und Wiederherstellungen durchgeführt werden. Kurzum: Die gesamte Systemadministration aller virtuellen LPARs auf mehreren physischen Servern erfolgt über ein zentrales Interface.

Fazit

Was als gemütliche Diskussion im Kaffeehaus begann, hat zum Relaunch eines der performantesten Portale Österreichs binnen drei Monaten geführt. „Die Entscheidung für TYPO3 und das IBM System p hat sich als absolut richtig erwiesen“, zeigt sich sport1.at-Projektleiter Mag. Armin Rudelstorfer, über das Ergebnis nach einem Jahr Praxisbewährung zufrieden. Inzwischen arbeitet plan2net zusammen mit Kasper Skårhøj an der Optimierung des TYPO3-Workflow-Moduls und sponsert diese Entwicklung in Kooperation mit sport1.at. Parallel dazu plant der umtriebige Content-Provider bereits, seine Online-Community in den Webauftritt einzubinden.

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
Schreib den ersten Kommentar!
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige