Sadrak: meine Ausgangslage

OK, auf mehrfachen wunsch mal das was ich eigentlich machen will :)

OK, ich hatte mir das halt schon einfach vorgestellt. Türlich kann ich es auch anderes realisieren. Aber hier nochmal mein erster Gedanke:

Ich habe ein mySQL datenbank mit sehr vielen Daten pro Spieler. Achjam es soll sich mal wenn es ferig ist um ein Spiel drehen :)

Naja, nun Lade ich alle Daten beim Loginvorgang in ein eigenes Objekt. Ich nenne es SPIELEROBJEKT. Da steht jetzt wirklich alles drin was ich brauche. Dann hatte ich halt vor, dieses Spielerobjekt immer weiter zu geben zum aktuellen Script und sollte was geändert werden, wird gleichzeitig die DatenBank aktualisiert UND das Objekt. OK? Naja, also, so wie ich sehe ist das wohl ne scheiss Idee *g*

Also werde ich mich wohl damit zufreiden geben immer alles aus der DB zu saugen wenn ich es brauche :) oder seht ihr ne bessere lösung?

  1. Hallo Sadrak,

    OK, auf mehrfachen wunsch mal das was ich eigentlich machen will :)

    poste doch bitte unter einem der 2 Threads, die Du schon eroeffnet hast (und die beide noch im oberen Drittel des Forums sind)[1]. Dann wissen die Leute auch, worum es geht; das stueckchenweise Verteilen der Information macht das Erfassen Deines Problems auch nicht leichter.

    [1] Das hatte Dir CK auch schon mal geschrieben, ebenso steht es in der FAQ.

    Gruss
    Thomas

    1. Bin kein richtiger Forumsmensch

      Ich kenne das nur so, wenn ich unter einem alten Post was schreibe, antwortet keine Sau mehr. So ist es mir zumindest mal immer passiert. So habe ich mir das angewöhnt, halt immer einen neuen Tread aufzumachen. OK, wenn ihr mir alle versprecht trotzdem dann darauf zu reagieren *g*

      1. Hallo,

        Bin kein richtiger Forumsmensch

        Was nicht ist, kann ja noch werden.

        Ich kenne das nur so, wenn ich unter einem alten Post was schreibe, antwortet keine Sau mehr.

        Wer sagt das?
        Schau Dir einmal die Forumshauptdatei durhc, und Du wirst sehen, daß es durchaus eine Menge Threads gibt, die schon ziemlcih lange leben, und auf die auch noch geantwortet wird. So lange eine offene diskussion stattfindet fliegt der Thread auhc nicht raus.

        So ist es mir zumindest mal immer passiert.

        Aber nur, wenn keiner mehr was dazu zu sagen hatte. Sol ja auhc vorkommen.

        So habe ich mir das angewöhnt, halt immer einen neuen Tread aufzumachen.

        Gewöhns Dir am besten gleich wieder ab.

        OK, wenn ihr mir alle versprecht trotzdem dann darauf zu reagieren *g*

        Also eins kann ich Dir zumindest versprechen, mämlich daß diese Beiträge auch sicherlich gelesen werden.

        Grüße
          Klaus

        1. OK, danke danke ...

          habe mir auch gleich noch das Forum-FAQ angetan, zumindest mal richtig. Überflogen hatte ich es eh schon.

          Nochmal zu meiner Problematik. Vielleicht kann mir auch jemand sagen, wie ich es anderslösen könnte. Weil im moment habe ich keinerlei anderen Gedankeansatz, der zugleich auch effektiv ist in der Ausführung. Oder ich übersehe was wichtiges.

          Naja, also ich fand meine Objektlösung SOOOO toll *g*

          1. Hallo,

            habe mir auch gleich noch das Forum-FAQ angetan, zumindest mal richtig. Überflogen hatte ich es eh schon.

            Gut so;-)

            Nochmal zu meiner Problematik. Vielleicht kann mir auch jemand sagen, wie ich es anderslösen könnte.

            ICh denke, es bleibt Dir nichts anderes übrig, als den klassischen Weg mit Sessionmanagment und regelmäßigen Datenbankzugriffen zu machen.
            Alternativ könntest Du auch zu jeder Session eine Datei mit führen, was aber im Endeffekt wahrscheinlich komplizierter und Fehleranfälliger ist, als gleich mit der Datenabnk zu arbeiten.

            Naja, also ich fand meine Objektlösung SOOOO toll *g*

            Grundsätzlich war sie ja gar nicht schlecht, aber...
            Da Perlobjekte zum Glück[1] auch mit dem Ende des Scripts (== Ende der Requestbearbeitung) gelöscht werden, gehen die Informationen dazu eben auch flöten, wenn die Seite endgültig beim Besucher-Browser angelangt ist. Auhc lösungen Mit mod_perl bringen dir nur dann was, wenn DU sicherstellen kannst, daß immer nur genau eine Instanz des Webservers läuft, also auch immer nur ein Request zu einem bestimmten Zeitpunkt abgearbeitet werden kann. Wobei das auch dann noch ein ziemlcihes Gefummel werden wird, denke ich. Und außerdem muß der Webserver auch mitspielen. Naja, du könntets natürlich einen Spezialwebserver-schreiben, aber ob sich der Aufwand lohnt, ist auhc fraglich.

            Leider keine guten Nachrichten für dich, oder?

            Grüße
              Klaus

            [1] Wenn dem nicht so wäre, würdest Du einen Server mit Unmengen RAM brauchen, da jeder Scriptaufruf mehr Speicher braucht, der dann nicht freigegeben wird. Memory-Leak nennt man sowas. Aber das kennt man hauptsächlich nur von MS-Produkten *g*

            1. OK, danke. kann mir einer vielleicht noch mal sagen wo ich Infos zu diesen Memory-Leaks bekomme? Würde mich interessieren.

              Ansonsten muss ich wohl dabei leben, das niemand mich lieb hat bei den Perlmachern *g*

              Danke vielmals für die hilfe

              1. Hallo,

                OK, danke. kann mir einer vielleicht noch mal sagen wo ich Infos zu diesen Memory-Leaks bekomme? Würde mich interessieren.

                Memory-Leaks (oder auf dt. Speicherlecks) entstehen, wenn ein Programm zur Laufzeit Speicher vom Betriebssystem anfordert (reserviert), diesen aber bei Beendigung des Programmes nicht mehr frei gibt. Das Problem dabei ist, daß so schön langsam dem Betriebssystem der Speicher ausgeht,  da es ja auf den reservierten Speciher nicht mehr zugreifen darf. Im Laufe der Zeit geht dann gar nichts mehr.

                Ansonsten muss ich wohl dabei leben, das niemand mich lieb hat bei den Perlmachern *g*

                Es geht gar nicht darum, daß Dich keiner lieb hat, sonder darum daß Du etwas machen willst, das so einfach nicht machbar ist, egal ob mit PErl oder sonst was. Manchmal muß man sich halt auch von unrealisierbaren Ideen trennen.

                Grüße
                  Klaus

                1. aehm, nur kurz dazu:

                  Soviel ich weiss, geht das was ich vorhabe mit PHP!
                  Irgendwie über die Session-Sache die PHP ziemlich gut im Griff hat wäre sowas möglich! Hat mir nen bekannter gesteckt, der selber ein sehr großes Projekt am laufen hat. Also nur soviel dazu.

                  Also kann ich es doch auf die Perlmacher schieben :-p

                  1. Hallo,

                    Soviel ich weiss, geht das was ich vorhabe mit PHP!

                    Nein.

                    Irgendwie über die Session-Sache die PHP ziemlich gut im Griff hat
                    wäre sowas möglich!

                    In PHP kannst du a) nur Basis-Datentypen als Session-Variablen
                    speichern und b) werden die Daten genau so zwischengespeichert, wie
                    Klaus es dir beschrieben hat. Wobei man optional auch eine Datenbank
                    als Session-Speicher benutzen kann. Auch fuer Perl gibt es
                    Session-Module.

                    Also kann ich es doch auf die Perlmacher schieben :-p

                    Nein.
                    Ich glaube, du solltest dich erstmal informieren, bevor du grosse
                    Toene spuckst.

                    Gruesse,
                     CK