Ankündigung

Einklappen
Keine Ankündigung bisher.

Problem bei Navigations-Funktion

Einklappen

Neue Werbung 2019

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

  • #16
    Naja das Argument mit Update und Insert zählt nicht wirklich.
    Die Navigation wird bei JEDEM Aufruf der Seite generiert (außer du erstellst einen Cache) und dadurch werden jedes mal 5 Querys erstellt. Angenommen du nimmst Nested Sets, hast du eben mehr Anfragen bei Update oder Insert. Aber wie oft findet den ein Update oder Insert statt? Im Normalfall nie. Ganz selten kommen mal Punkte hinzu! Und durch einmalige Handlungen geht die Performance nicht in die Knie. Denn die Navigation wird wohl nur der Admin ändern können, nicht aber jeder User. Daher musst du drauf achten WELCHE Operationen wirklich oft genutzt werden und genau diese dann Optimieren.

    Kommentar


    • #17
      Fakt ist aber eins,eine Rekursive Funktion nimmt die Performance mehr in Anspruch und kann die DB auch lahmlegen,was beim nested sets nicht passiert!

      Beispiel du hast eine Select Abfrage mit 6 Ebenen und nun hast du 300 User die in diesem Navigationsmenu zugreifen und sich wild durch klicken,dann kannst du dir ausrechnen wie viele querys da zustande kommen. Beim nested sets wird alles in einem query abgehandelt und somit ist die Performance nicht zum Zusammenbruch gefährdet!

      Aber wie gesagt ich tue mich auch bei beiden Sachen noch bisschen schwer. Ich weis zwar zum Beispiel wie man eine Fakultät einer Zahl berechnet aber das in Programmcode umzusetzen und die Abbruchbedingung zu schaffen,das macht mir auch Beschwerden!
      Und das nested sets ist wieder von SQL Statements her ziemlich kompliziert!
      Aus dem Dynamo Lande kommen wir. Trinken immer reichlich kühles Bier. Und dann sind wir alle voll, die Stimmung ist so toll. Aus dem Dynamo Lande kommen wir.
      [URL]http://www.lit-web.de[/URL]

      Kommentar


      • #18
        Bei Fakultäten kannst du das ganze auch nicht rekursiv lösen. Wobei keine der beiden Funktionen irgendwie schwer ist.
        PHP-Code:
        <?php
        // ohne Rekursion
        function fakultaet($i) {
            
        $result $i;
            for (
        $x $i-1$x 1$x--) {
                
        $result *= $x;
            }
            return 
        $result;
        }

        // mit rekursion
        function fakultaet($i) {
            if (
        $i <= 1) return 1;
            return 
        $i fakultaet($i-1);
        }

        Kommentar


        • #19
          OK, habs verstanden...
          ich werde es wohl mit Nested-Sets machen =)

          Kommentar

          Lädt...
          X