Ankündigung

Einklappen
Keine Ankündigung bisher.

Gegenüberstellung von Session-Systemen

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Gegenüberstellung von Session-Systemen

    Hallo,
    bei der Planung des nächsten PHP-Projekts ist die Frage nach dem Session-System aufgekommen. Klassischerweise gibt es die Möglichkeit über die PHP eigenen session_-Funktionen.
    Alternativ könnte man auch die Session manuell regeln: Cookie für Session-ID und die Session-Daten werden in einer MySQL-Tabelle gespeichert.

    Mich würde interessieren, ob Ihr schon mit beiden "Systemen" Erfahrungen habt. Wenn ja, welches ist besser geeignet hinsichtlich Sicherheit und Performance bei großem Benutzeraufkommen (z.B. 1000 aktive Nutzer simultan).

    Grüße
    Nystagmussen


  • #2
    Sessions funktionieren ebenfalls über Cookies !!! Also was du machst ist eigentlich sinnlos denn du bastelst die session_* Funktionen nach!

    Arbeite mit Sessions und am besten ohne Datenbankabfrage. Bei vielen Usern wird das sonst zu großer Aufwand jedes mal die Session über die DB zu überprüfen.

    Kommentar


    • #3
      Ja, das ist klar: PHP eigene Sessions laufen i.d.R. über Cookies oder manchmal wird die PHPSSID über die URL mitgegeben. Eigentlich dachte ich bei der zweiten Lösung an eine Umsetzt ganze ohne session_start() usw.

      Kommentar


      • #4
        Dann nutz Sessions, die Frage nach der Sicherheit ist irrelevant da beide Methoden im Endeffekt gleich arbeiten!

        Bei der Performance habe ich bereits gesagt dass du DB Abfragen meiden solltest.

        Kommentar


        • #5
          Hallo nystagmussen,

          ich benutze eigentlich nicht die PHP eigenen Session Funktionen. Ich hatte damals ziemliche Probleme mit den Sessions, weil Google und co immer die Session ID angehängt haben, weil man da ja keine Cookies setzen kann.

          Bin jetzt also auf ein Cookiebasierentes mit Datenbank umgestiegen.

          Mag sein, dass das Performance mässig irgendwas ausmacht die 2.te Variante, aber so kann ich mir sicher sein, dass Google definitiv keine Session IDs mehr an die Url anhängt.
          Mfg Tomtaz
          "Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."

          Kommentar


          • #6
            Genau wegen diesem Problem gibt es die Einstellung "use_trans_sid". Diese verhindert dass PHP die SessionID an die URL anhängt!
            PHP-Code:
            <?php
            ini_set
            ('session.use_trans_sid'false);

            Kommentar


            • #7
              Zitat von Flor1an Beitrag anzeigen
              Genau wegen diesem Problem gibt es die Einstellung "use_trans_sid". Diese verhindert dass PHP die SessionID an die URL anhängt!
              PHP-Code:
              <?php
              ini_set
              ('session.use_trans_sid'false);
              Ist mir im Nachhein auch angeraten worden, aber ich werde doch nicht mein System jetzt deswegen umkrempeln. Ich nutze lieber mein Cookie System, das Datenbank basiert ist.
              Mfg Tomtaz
              "Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."

              Kommentar


              • #8
                Dann solltest du dein System, das sich im nachhinein als "schlechter" herausgestellt hat nicht noch weiter empfehlen!

                Kommentar


                • #9
                  Zitat von Flor1an Beitrag anzeigen
                  Dann solltest du dein System, das sich im nachhinein als "schlechter" herausgestellt hat nicht noch weiter empfehlen!
                  Hallo Florian,

                  habe ich mit irgendeiner Silbe erwähnt, dass beide Varianten schlecht sind? Beide haben ihre vorzüge und im Prinzip muss jeder für sich abwiegen was für einen besser ist. Mir ist halt das Cookie System lieber...
                  Mfg Tomtaz
                  "Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."

                  Kommentar


                  • #10
                    Sessions sind auch ein Cookiesystem ... Warum immer das Rad neu erfinden? Sessions sind extra dafür gemacht worden. Und wenn unnötige DB Abfragen zustande kommen ist das System sehr wohl nicht das beste.

                    Kommentar


                    • #11
                      Es ist exakt eine Abfrage Florian, wenn du es genau wissen willst. Diese Abfrage müsste ich auch ausführen wenn ich das "normale" Session System nutzen würde. Von daher ist es im Prinzip egal welches System man nimmt.
                      Mfg Tomtaz
                      "Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."

                      Kommentar


                      • #12
                        Und wieso musst du diese Abfrage durchführen? Eigentlich sollte es doch reichen am Anfang der Session die Userdaten in diese Session zu speichern und dann kannste im Verlauf immer wieder auf diese Daten in der Session zugreifen. Somit entsteht kein Zugriff mehr.

                        Kommentar


                        • #13
                          Die Diskussion geht genau in die Richtung, welche ich mir gedacht hatte. Wenn ich das bisher nochmals zusammenfassen darf:

                          Flor1an: Man spart eine Datenbankabfrage*, der Server muss aber die Textdatei auslesen.
                          tomtaz: Das Gegenteil. Der Server liest nicht aus der Textdatei, sondern aus der Datenbank.

                          Da bleibt die Frage, was schneller ist? Mein ursprünglicher Gedanke war, das die Verwendung der Datenbank genau deswegen etwas schneller als der Zugriff auf die Datei sein könnte.
                          Einige Foren und Blogging-Tool haben sich ja tatsächlich für die Datenbankvariante entschieden.

                          * Datenbanken arbeiten eigentlich auch mit "Textdateien"

                          Kommentar


                          • #14
                            Richtig. Und deshalb musst du bei der Datenbank den Umweg eben über die Datenbank nehmen. Nicht umsonst funktioniert Caching bei vielen Templatesysteme über Dateien. Damit keine DB Abfragen mehr entstehen müssen.

                            Vor allem musst du bei Cookies alles selber machen. Ist also nochmal nen Tick komplizierter.

                            Kommentar


                            • #15
                              Was aber nicht heißt, dass DB basierte Systeme schlechter sind. Sonst würden es nicht so viele Blog und Forensysteme verwenden.
                              Mfg Tomtaz
                              "Es soll jetzt diese Erfindung geben.... Kugel oder so heißt die. Ist so eine Art Suchmaschine..."

                              Kommentar

                              Lädt...
                              X