451 queries excuted ???

Probleme bei der regulären Arbeiten mit phpBB, Fragen zu Vorgehensweisen oder Funktionsweise sowie sonstige Fragen zu phpBB im Allgemeinen.
Forumsregeln
phpBB 2.0 hat das Ende seiner Lebenszeit überschritten
phpBB 2.0 wird nicht mehr aktiv unterstützt. Insbesondere werden - auch bei Sicherheitslücken - keine Patches mehr bereitgestellt. Der Einsatz von phpBB 2.0 erfolgt daher auf eigene Gefahr. Wir empfehlen einen Umstieg auf phpBB 3.1, welches aktiv weiterentwickelt wird und für welches regelmäßig Updates zur Verfügung gestellt werden.
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

451 queries excuted ???

Beitrag von Waagenbauer »

Hallo,

beim viewforum habe ich 452 queries, beim index über 300! v.2.0.4

Ich weis nicht mehr genau seid wann die queries so hochgeschossen sind. Mein Server geht kräftig in die Knie.

Meine letzten Mods waren der "categories hierarchie 1.1.0" und der "birthday-mod".
Bin mir aber nicht sicher, obs an einem Mod liegt.

Das die Q nach Mods ansteigen ist ja klar, aber 200-450 ist doch nicht normal.

Hat jemand schonmal das gleiche Problem gehabt? Weis jemand Rat?
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Tja, is nich soo verwunderlich bei derartigen Hacks ... was hast´n alles in die page_header.php und page_tail.php eingebaut ?
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

Beitrag von Waagenbauer »

page_header.php

Ab Zeile 60 'Today at Mod' und Mod für Winter/Sommerzeit (welcher aber nicht richtig funzt)

Code: Alles auswählen

//
// PARSE DATEFORMAT TO GET TIME FORMAT // TODAY AT MOD
//
$time_reg = '([gh][[:punct:][:space:]]{1,2}[i][[:punct:][:space:]]{0,2}[a]?[[:punct:][:space:]]{0,2}[S]?)';
eregi($time_reg, $board_config['default_dateformat'], $regs);
$board_config['default_timeformat'] = $regs[1];
unset($time_reg);
unset($regs);

// 
// GET THE TIME TODAY AND YESTERDAY 
// 
$today_ary = explode('|', create_date('m|d|Y', time(),$board_config['board_timezone'])); 
//ab hier geändert von mir ////////// 
$zeit = localtime(time() , 1); 
if ($zeit[tm_isdst]==1) 
{ 
   //Sommerzeit 
   $board_config['time_today'] = gmmktime(0 - $board_config['board_timezone'] - $board_config['dstime'] - date('I'),0,0,$today_ary[0],$today_ary[1],$today_ary[2]); 
} 
if ($zeit[tm_isdst]==0) 
{ 
   // Winterzeit 
   $board_config['time_today'] = gmmktime(0 - $board_config['board_timezone'] - $board_config['dstime'],0,0,$today_ary[0],$today_ary[1],$today_ary[2]); 
} 
//ende änderungen von mir 
$board_config['time_yesterday'] = $board_config['time_today'] - 86400; 
unset($today_ary); 

Also hier liegts nicht dran. Hatte ich schon rausgenommen:

Code: Alles auswählen

if ( $userdata['session_logged_in'] )
{
      // see if user has or have had birthday, also see if greeting are enabled 
	if ( $userdata['user_birthday']!=999999 && $board_config['birthday_greeting'] && create_date('Ymd', time(), $board_config['default_timezone'])  >= $userdata['user_next_birthday_greeting'].realdate ('md',$userdata['user_birthday'] ) ) 
	{ 
	      $sql = "UPDATE " . USERS_TABLE . " 
      	     	SET user_next_birthday_greeting = " . (create_date('Y', time(), $board_config['board_timezone'])+1) . " 
            	WHERE user_id = " . $userdata['user_id']; 
	      if( !$status = $db->sql_query($sql) ) 
		{ 
            	message_die(GENERAL_ERROR, "Could not update next_birthday_greeting for user.", "", __LINE__, __FILE__, $sql); 
	      } 
		$template->assign_var("GREETING_POPUP",  
		"<script language=\"Javascript\" type=\"text/javascript\"><!-- 
		   window.open('http://www.kaltmacher.de/birthday_popup.php', '_phpbbprivmsg', 'HEIGHT=225,resizable=yes,WIDTH=400'); 
		  //--> 
		</script>");
      } //Sorry user shall not have a greeting this year

Das am Ende Subforen-Mod:

Code: Alles auswählen

// header ('Cache-Control: private, pre-check=0, post-check=0, max-age=0');
// header ('Expires: ' . gmdate('D, d M Y H:i:s', time()) . ' GMT');
// header ('Last-Modified: ' . gmdate('D, d M Y H:i:s') . ' GMT');

//-- mod : hiérarchie des rubriques ----------------------------------------------------------------
//-- add v1.0.2
if (!isset($board_config['sub_forum']) )
{
	$sqlw = "insert into ".CONFIG_TABLE." (config_name,config_value) VALUES('sub_forum','1')";
	if ( !($resultw = $db->sql_query($sqlw)) ) message_die(GENERAL_ERROR, 'Could not add key sub_forum in config table', '', __LINE__, __FILE__, $sql);
}
$sub_forum = (isset($board_config['sub_forum'])) ? intval($board_config['sub_forum']) : true;
//-- add v 1.0.9
$template->assign_vars(array(
	'NAV_SEPARATOR' => $nav_separator,
	)
);
//-- fin mod : hiérarchie des rubriques ------------------------------------------------------------

$template->pparse('overall_header');

?>
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

..deaktiviere mal testweise den birthday-Code.
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

Beitrag von Waagenbauer »

Den Birthday-code hatte ich schonmal rausgenommen. Liegt nicht daran.

Wenn ich eine Seite aufrufe ohne weitere Verarbeitung und DB-Abfrage, nur mit den üblichen includes habe ich das gleiche Problem über (200 queries).

Es muss also in den includeten Dateien was Faul sein: extensions.php, sessions.php usw.

Oder könnte es daran liegen, das ich in der httpd.conf meines Apache-Servers und php.ini die Persistent-Connections deaktiviert habe ?
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

Beitrag von Waagenbauer »

An den Server einstellungen liegt auch nicht.

Hier kann man sehen das immer ca. 220 queries zuviel angezeigt (abgearbeitet) werden: http://www.kaltmacher.de/viewtopic/

@Acid
Kann ich dir mal die includeten Dateien common, auth usw. schicken oder hast du noch ein Tip ?
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Acid
Ehrenadmin
Beiträge: 12195
Registriert: 26.04.2001 02:00
Wohnort: Berlin

Beitrag von Acid »

Naja, es gibt eigentlich kaum Hacks die Änderungen an common.php, sessions.php oder auth.php verlangen. Und wenn sind es solche, die du, wenn ich das richtig überblicke, nicht eingebunden hast (z.B. Last Visit).
Oder könnte es daran liegen, das ich in der httpd.conf meines Apache-Servers und php.ini die Persistent-Connections deaktiviert habe ?
oha. Warum hattest´n das deaktiviert ? Das könnte natürlich der Grund sein, denn wenn eine identische Verbindung bereits besteht, wird diese genutzt, ansonsten wird eine neue geöffnet.
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

Beitrag von Waagenbauer »

Ich habe alles was mit die persistant zu tun hat wieder auf on gestellt und neu gestartet. Es hat sich nichts an den queries verändert.
Es sind ja immer über 200 zuviel. :(

Warum persistant auf off? Das hatte ich mal im linuxforum gelesen. Da hieß es, es wäre nachteilig für den Serverspeed bei einem großem php-forum.
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Benutzeravatar
Waagenbauer
Mitglied
Beiträge: 219
Registriert: 11.06.2001 02:00
Kontaktdaten:

Beitrag von Waagenbauer »

Was ich jetzt bemerkt habe ist, dass bei Seiten bei den Daten aus der User-Tabelle aufgerufen werden (wie viewtopic, memberlist, profil, groupcp) die queries auf über 400 steigen (sonst über 200).

Ich habe über 3700 User, kann doch nicht daran liegen, oder ?
Meine DB wird regelmäßig gewartet.
http://www.kaltmacher.de - Die Seite für PC-Freaks und Profis.
Dennis63
Ehemaliges Teammitglied
Beiträge: 2597
Registriert: 02.07.2003 18:46

Beitrag von Dennis63 »

Hi

Kann es sein, daß evtl nur die Anzeige falsch ist und gar nicht so viele Querrys da waren, als angezeigt werden?

Page generation time: 1.043 seconds :: 310 queries excuted
Das wären 0,003 Sekunden pro Querry - Was mir doch recht wenig vorkommt.

AllInk hat zur Zeit z.B. z.B. 0,06 Sekunden laut Hostwatch.
1&1 liegt bei 0,3 Sekenden, was sehr viel ist.
Mein Hoster (Urifabi) liegt aktuell bei 0,08 Sekunden.

Grüße
Dennis
Antworten

Zurück zu „phpBB 2.0: Administration, Benutzung und Betrieb“