Neueste Themen
» Was denkt ihr gerade?
von Ayron Jenkins Gestern um 12:40

» Hallo erstmal ^^
von Ayron Jenkins Di 14 Mai 2024, 21:49

» Wie schützt ihr eure Pokemon Karten?
von Richard026 Sa 11 Mai 2024, 16:16

» Auf welche Spiele freut ihr euch?
von Ayron Jenkins Do 09 Mai 2024, 13:33

» Switch 2
von Dana So 31 März 2024, 13:06

» Gewinnspiel zu Pokémon Karmesin und Purpur
von Sabbo Fr 02 Feb 2024, 14:43

» Van Gogh Pikachu Promotion
von Sabbo Mo 22 Jan 2024, 18:39

» Preise Japanischer Modern Karten explodieren
von Bahamut Sa 06 Jan 2024, 18:58

» Zeigt her eure Pokemonkarten!
von Sabbo Mi 03 Jan 2024, 21:21

» Freundescodes für die Freundessafari in X/Y
von Ayron Jenkins Do 31 Aug 2023, 18:28

Mitgliederstatistik
Mitglieder1918
Besucherrekord323
Neuestes Mitglied
Forengründung07. Juli 2009
Wer ist online?
Insgesamt sind 21 Benutzer online: 1 Angemeldeter, kein Unsichtbarer und 20 Gäste

Ayron Jenkins

[ Die ganze Liste sehen ]


Der Rekord liegt bei 323 Benutzern am Di 22 Nov 2011, 17:54
Random

Serverabstürze

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach unten

Idee Serverabstürze

Beitrag von schnalkser So 24 Mai 2015, 23:21

Hallo liebes Schiggysboard!

Für diejenigen unter euch die regelmäßig auf unserem Pokemon Online Server unterwegs sind, wird es sicherlich keine neue Information sein dass unser Server seit einer Weile "ein wenig" instabil geworden ist.

Dieser Zustand zehrte nicht nur an der Geduld eines jeden Users sondern frustrierte mich persönlich auch zunehmends, da ich nicht wusste wodurch die Abstürze entstanden.

Nun, nach mehreren Wochen der Abstürze, kann ich euch mit Freuden mitteilen: Ich weiss immer noch nicht wodurch es zu den Abstürzen kam!!!

Nun das ist natürlich nur die halbe Wahrheit, ich weiss zwar nicht warum genau es zu den Abstürzen kam, aber ich weiss wie es dazu kam und ich weiss jetzt auch wie man die Abstürze in Zukunft (hoffentlich) beheben kann.

Der folgende Absatz beschäftigt sich eher mit technischen Details, falls euch diese nicht interessieren könnt ihr ihn also einfach überspringen.
Vorweg sei gesagt dass die Fehlersuche ein ziemliches "Im Dunkeln stochern" war. Der Fehler, der die Abstürze hervorruf entstand in einer Datei die einen Teil des Sourcecodes von PO bildete. Also nicht einfach nur unsere fröhlich feinen Serverscripts sondern etwas, das ein Teil des Hauptprogramms ist. Dass man da nicht wirklich einfach mal Sachen umschreiben oder abändern kann, ohne genau zu wissen was man tut, sollte denk ich mal klar sein. Um das ganze noch ein bisschen nerviger zu machen ist die entsprechende Datei in C++ geschrieben, welches weder ich noch Coby wirklich beherrschen.
Was habe ich also gemacht? Anfangs habe ich noch versucht, dass warum zu beantworten. Ich habe versucht einige Scripts umzuschreiben, sie kurzzeitig sogar komplett ersetzt. Dann hatte ich versucht anhand der IP Adressen, welche besagten Fehler verursachten, irgendwelche Schlüsse zu ziehen. Das alles hatte nicht wirklich Erfolg, also habe ich die allmächtige Macht des Internets genutzt um mir weiter zu helfen!
Zuerst wollte ich mir einfach im PO Forum Hilfe suchen, habe also ein Thema eröffnet in dem ich unser Problem erörtert habe. Leider konnte mir niemand wirklich helfen.
http://pokemon-online.eu/threads/server-keeps-crashing.31105/
Aber es gab auch einen Lichtblick! Unser Problem war bekannt.
https://github.com/po-devs/pokemon-online/issues/1209
Exakt diesen Fehler hatten wir auch zu beklagen. Ich hatte also versucht den Autor des Textes zu erreichen, denn wenn er das Problem schon hatte ist es nicht unwahrscheinlich dass er es beheben konnte. Leider musste ich feststellen, dass besagter Autor... schwer zu erreichen ist. Will sagen er hat mir bisher noch nicht geantwortet :)
Also wieder alles auf null, ich konnte nicht ewig auf eine Antwort warten. Inzwischen war mir das warum nicht mehr so wichtig wie das wie. Und da mir scheinbar niemand wirklich helfen konnte musste ich versuchen selbst eine Lösung zu finden. Was genau die Lösung nun war und wie ich drauf gekommen bin geht wohl etwas zu weit, und es war auch im Grunde nur eine Idee die ich sowohl coyotte508 als auch Fuzzysqurtl (Beides PO Developer) präsentierte.

Und scheinbar war es der richtige Gedankengang, denn Fuzzysqurtl konnte mir eine Lösung präsentieren. Diese ist aber auch erstmal nur rudimentär, deshalb gibt es keine Garantie dass jetzt alles auf Anhieb wieder ohne Probleme laufen wird (Ein sehr beliebtes Programmierprinzip, Trial and Error ;) ).

Coby war so freundlich und hat den Server vorhin aktualisiert, deshalb sollte der Fix inzwischen implementiert sein.

Nun noch ein paar grundsätzliche Sachen:
Warum habe ich es nicht einfach selbst probiert, sondern hab oft auf die Rückmeldung von anderen Personen gewartet?
Ganz einfach: Bei sowas kann ne ganze Menge schiefgehen. Den Sourcecode zu verändern kann theoretisch alles zerschießen und auch wenn man bei den Scripts ein wenig zu forsch ist kann ne Menge schiefgehen (Die Leute die auf dem Server waren als ich mal testweise die POScripts laufen lassen habe wissen das vermutlich noch). Ich hol mir lieber eine zweite Meinung ein von jemandem der genau so viel oder sogar mehr Ahnung hat, da ich, wenn etwas schief laufen sollte, die gesamte Verantwortung trage.

Warum habe ich so einen Thread nicht schon früher gemacht, sozusagen als Statusupdate?
Wie ich vorhin gesagt habe war die Suche nach einer Lösung wie ein ziemliches im Trüben fischen. Ich bin vielen Sachen nachgegangen und fast alle davon haben sich als "falsche Fährten" entpuppt. Wenn ich also geschrieben hätte dass ich grade das und das mache, dann hätte es durchaus sein können dass diese Sachen überhaupt nicht zur Lösung führen. Und bevor ich falsche Hoffnungen wecke, sage ich lieber erst etwas wenn ich mir sicher bin. Denn falsche Versprechen finde ich schlimmer als keine Versprechen.

Da ich mir jetzt aber ziemlich sicher bin dass das Problem gelöst ist dachte ich mir ich bringe einen jeden der sich die Mühe macht diesen Text zu lesen auf den neuesten Stand. Das finde ich besser als einfach nur eine Nachricht auf dem Server zu machen die von vielen nicht gelesen werden kann.


Für all meine Mühen erwarte ich jetzt natürlich einen eigenen Forenrang, so etwas wie "Retter des Servers" wäre angebracht. Die Userschaft kann mir eine Hymne schreiben und Lobeslieder auf mich singen. Das sollte genügen, ich bin bescheiden.
Spass beiseite, ich hab mich dazu bereiterklärt mich um den Server zu kümmern und ausserdem ist es ein ziemlich gutes Gefühl wenn man ein Problem, welches die eigenen Kompetenzen scheinbar übersteigt, dann doch irgendwann lösen kann. Sowas macht mir halt irgendwie Spass :) #waseinnerd
schnalkser
schnalkser
Picasso der Neuzeit
Picasso der Neuzeit

Status :
Online
Offline

Anzahl der Beiträge : 1051

Nach oben Nach unten

Vorheriges Thema anzeigen Nächstes Thema anzeigen Nach oben


Befugnisse in diesem Forum
Sie können in diesem Forum nicht antworten