php.de

Zurück   php.de > Webentwicklung > Datenbanken

Datenbanken SQL und Co

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 07.02.2012, 22:47  
Neuer Benutzer
 
Registriert seit: 09.01.2011
Beiträge: 6
PHP-Kenntnisse:
Anfänger
lobba befindet sich auf einem aufstrebenden Ast
Standard Wieviele Datenbankzugriffe pro Seitenaufruf?

Hi.

Ich habe mal ein Frage: Wieviele Datenbankzugriffe sollte man pro Seitenaufruf generieren?

Ich nutze in PHP eine Klasse, die mir Daten anhand der ID aus der MySql-DB zieht.

Konkret:
Ich habe eine Seite, die zb. 10 Datenbankzugriffe braucht.
Dafür habe ich eine Methode.
$myClass->getEntry(1); // Eintrag mit ID 1
$myClass->getEntry(4);
$myClass->getEntry(3);
...usw
Diese Aufrufe kommen verstreut im HTML-Code vor.

Jetzt hochgerechnet:
10 User greifen auf 1 Seite zu = 100 Datenbankzugriffe.
100 User greifen auf 2 Seite zu = 2000 Datenbankzugriffe.
1000 User greifen auf 3 Seite zu = 30000 Datenbankzugriffe.

Ich denke das ist etwas viel... oder?

Kann man diese Queries cachen, oder muss ich mir eine andere Struktur der Seiten-Content-Generierung ausdenken?

Danke
lobba ist offline   Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 07.02.2012, 23:04  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Zitat:
Zitat von lobba Beitrag anzeigen
Ich habe mal ein Frage: Wieviele Datenbankzugriffe sollte man pro Seitenaufruf generieren?
mindestens 100. Im Ernst, was ist das für eine Frage? Was anderes als "kommt drauf an" oder "so wenig wie möglich" kann man darauf doch nicht antworten und wie soll dir das helfen?

Zitat:
Konkret:
[...]
Diese Aufrufe kommen verstreut im HTML-Code vor.
Okay, da kann man was zu sagen. Hier liegt dein Problem und da solltest du unbedingt etwas dran ändern, Datenbankabfragen haben nichts im HTML-Code zu suchen (Stichwort EVA-Prinzip, Separation of Concerns). Also erst Daten verarbeiten und abfragen, dann HTML-Ausgabe. Und schon wird es viel einfacher, Queries zusammenzufassen.

Um Caching kannst du dir dann immer noch Gedanken machen, vorzugsweise wenn es nötig erscheint.
fab ist offline   Mit Zitat antworten
Alt 08.02.2012, 00:09  
Neuer Benutzer
 
Registriert seit: 09.01.2011
Beiträge: 6
PHP-Kenntnisse:
Anfänger
lobba befindet sich auf einem aufstrebenden Ast
Standard

Zitat:
mindestens 100
ok... da gebe ich dir Recht, die Frage war nicht so gut formuliert. Was wäre denn ein angebrachter Druchschnitt?

Zitat:
Datenbankabfragen haben nichts im HTML-Code zu suchen
Eigentlich wird da nur die Klassen-Methode aufgerufen.

BSP:
<ul>
<li> $myClass->getEntry(1);</li>
<li> $myClass->getEntry(2);</li>
<li> $myClass->getEntry(3);</li>
</ul>
<ul>
<li> $myClass->getEntry(3); </li>
<li> $myClass->getEntry(2); </li>
<li> $myClass->getEntry(1); </li>
</ul>

Ich tendiere gerade dazu, vorher mit einer Abfrage ein Array anzulegen und dann auszugeben, also

$meinArray = $myClass->getAllEntries(1,2,3,5,;
<ul>
<li> $meinArray[3]; </li>
<li> $meinArray[2]; </li>
<li> $meinArray[8]; </li>
</ul>

Jedoch meckert dann vielleicht irgendwann mal das memory_limit?
lobba ist offline   Mit Zitat antworten
Alt 08.02.2012, 00:20  
fab
Erfahrener Benutzer
 
Benutzerbild von fab
 
Registriert seit: 28.07.2010
Beiträge: 2.308
PHP-Kenntnisse:
Fortgeschritten
fab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblickfab ist ein Lichtblick
Standard

Zitat:
Zitat von lobba Beitrag anzeigen
ok... da gebe ich dir Recht, die Frage war nicht so gut formuliert. Was wäre denn ein angebrachter Druchschnitt?
Selbe Antwort und das liegt nicht an der Formulierung

Zitat:
Eigentlich wird da nur die Klassen-Methode aufgerufen.
Schon klar aber das ändert nichts an meiner Aussage.

Zitat:
Ich tendiere gerade dazu, vorher mit einer Abfrage ein Array anzulegen und dann auszugeben, also

$meinArray = $myClass->getAllEntries(1,2,3,5,;
<ul>
<li> $meinArray[3]; </li>
<li> $meinArray[2]; </li>
<li> $meinArray[8]; </li>
</ul>
Das geht schonmal in die richtige Richtung

Zitat:
Jedoch meckert dann vielleicht irgendwann mal das memory_limit?
Warum sollte es?
fab ist offline   Mit Zitat antworten
Alt 10.02.2012, 14:33  
Erfahrener Benutzer
 
Registriert seit: 18.09.2003
Beiträge: 13.598
PHP-Kenntnisse:
Fortgeschritten
imported_Ben ist zur Zeit noch ein unbeschriebenes Blatt
Standard

"fab" hat es schon geschrieben, es gibt keinen Durchschnitt und auch keine best practice. Vielleicht doch, wir wäre es mit "so wenig wie möglich, aber so viel wie nötig".
Sollte es irgendwann zur Situation kommen, dass du zu viele Datenmengen durchforsten musst, um deine Seite aufzubauen hast du ja immer noch die Möglichkeit die Daten zu cachen.

Tipp: Mach einfach mal. Es muss ja nicht von Beginn an perfekt sein.
imported_Ben ist offline   Mit Zitat antworten
Antwort


Themen-Optionen
Thema bewerten
Thema bewerten:

Forumregeln
Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Einstellungen beim ersten Seitenaufruf einmalig intiieren Dopar PHP Tipps 2010 4 24.10.2010 11:16
[Erledigt] Merkwürdiges Problem mit Internet Explorer beim Seitenaufruf marloy87 PHP-Fortgeschrittene 5 20.10.2010 16:26
Wieviele Tabellen verkraftet eine Datenbank? Mehr als 2000? Gutschy Datenbanken 11 24.03.2010 21:55
session variable verschwindet bei erneutem seitenaufruf david.a.p. PHP Tipps 2009 2 17.08.2009 16:07
[Erledigt] Formularfeld beim Seitenaufruf fokussieren (ohne Javascript) stablish HTML, Usability und Barrierefreiheit 8 23.07.2009 15:55
onclick vor seitenaufruf ausführen KokosDesign JavaScript, Ajax und mehr 4 27.05.2009 01:25
Gültigkeit einer Variable nur für ein Seitenaufruf ruferp PHP Tipps 2007 6 17.02.2007 18:19
Wieviele Queries verträgt ein Server? webstylist Datenbanken 2 08.06.2006 16:10
Seitenaufruf aus IF-Abfrage MadMick79 PHP Tipps 2006 13 11.04.2006 20:09
Wieviele Anfragen kann ich einem MYSQL Server zutrauen Saliwen Datenbanken 10 09.02.2006 08:01
Java: Wieviele Benutzer benutzen es? SvenLittkowski HTML, Usability und Barrierefreiheit 12 20.12.2005 18:17
wieviele datensätze hat meine tabelle? Dilandau Datenbanken 10 07.12.2005 13:51
während dem ersten Seitenaufruf ein PHP-Skript ausführen PHP Tipps 2005 10 24.05.2005 13:14
Wieviele Tage hat ein Monat? Borlox PHP Tipps 2005 5 24.01.2005 14:07
wieviele datenbanken auf server vorhanden? Datenbanken 1 17.11.2004 08:29

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
datenbankzugriffe internet, wie viele querys pro seite durchschnitt, wieviel user beim aufrufen einer seite, wie viele sql-queries verträgt, wieviele queries

Alle Zeitangaben in WEZ +2. Es ist jetzt 17:04 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum