HOTFIX 49.3
- [behoben] Starke Systemauslastung durch die Hintergrundprozesse der Einnahmensberechnung
----
Für die Interessierten, hier ein paar technische Details:
Ich habe in den letzten Tagen an einer ganzen Reihe von Code-Optimierungen gearbeitet. Mithilfe von Datenbank-Monitoring konnte ich einige Performance-Schwachstellen ermitteln und daraus konkrete Optimierungen ableiten. Unser System setzt nun zudem noch mehr auf Caching. Außerdem werden die Logs der Einnahmenberechnung nun für einen kürzeren Zeitraum gespeichert, um auch hier die Last etwas zu verringern.
Der Hotfix zeigt bereits Wirkung, trotz der Vielzahl gleichzeitig laufender Veranstaltungen ist die Berechnung nun wieder schnell und unsere CPU-Auslastung ist wieder auf einem Normal-Niveau angekommen. Natürlich beobachte ich die Entwicklung hier weiterhin, aber aktuell sieht es sehr gut aus.
Mein neuer Fokus liegt nun ganz auf der Wiederherstellung des Statistik-Features. Durch das Abschalten der Statistik in der vergangenen Woche konnte ich den größeren Schaden verhindern, aber natürlich soll das Feature wieder zurückkommen. Ich habe diesbzgl. auch schon einen guten Ansatz.
Im Prinzip haben wir bisher jede einzelne Einnahme geloggt und über einen Zeitraum von 3 Monaten gespeichert. Das war insbesondere in der Alpha und Closed Beta relevant, um Fehler in der Einnahmenberechnung zu finden - denn so konnte man feststellen, wann wie viel Geld tatsächlich gebucht wurde. Seit der Open Beta ist die Einnahmensberechnung aber sehr stabil und fehlerfrei - mal abgesehen von der größeren Panne in der letzten Woche. Es ist also nicht mehr nötig, diese Daten so genau zu speichern, zumal das Speichern an sich aufgrund der Menge an Daten bereits zu Problemen führte (Leichte Unterschiede zwischen Kasse und Statistik). Patch 49 hätte diese Abweichungen korrigieren sollen, jedoch kam es zu einer Reihe von Nebeneffekten, die das Problem der Systemauslastung nur noch deutlicher machten - bis hin zum Absturz der Prozesse und damit dem totalen Systemausfall.
Ich arbeite also nun an einer Lösung, bei der die Einnahmen aus der Kasse zum exakt selben Zeitpunkt der Buchung auch für die Statistik erfasst werden, ohne einzeln aufbereitet und für Monate nachvollziehbar sein zu müssen. Das wird uns ermöglichen, das Statistik Feature trotz limitierter Hardware laufen zu lassen.
-----
In Zukunft möchte ich natürlich flexibler sein und bei Engpässen so schnell wie möglich Hardware-Ressourcen dazuschalten können.
Pläne dafür gibt es bereits, aber dafür ist leider mehr Geld notwendig. Daher wird das Spiel erst ein paar Content-Updates erhalten, um hoffentlich die Unterstützungsbereitschaft zu steigern.
Seit letzter Woche sind die Einnahmen aus dem Verkauf von Credits um fast 100% gefallen. Es ist klar, dass man kein Geld ausgeben möchte, wenn ein Spiel nicht so richtig funktioniert, wie es soll. Ein großes Dankeschön an die wenigen Spieler, die dennoch oder gerade jetzt etwas gekauft haben!
Vielen Dank an dieser Stelle auch an die vielen ehrlichen Spieler, die ihre Kontostände aus Fairnessgründen haben angleichen lassen.
Und zuletzt: Danke für die wirklich vielen positiven Nachrichten und Ermunterungen. Wenn man weiß, dass es trotz all der technischen Probleme noch immer viele gibt, die hinter einem stehen und zum Durchhalten animieren, dann motiviert das nochmal ein Stück mehr, die Zeit in dieses Projekt zu investieren. Danke 