php.de

Zurück   php.de > Webentwicklung > PHP-Fortgeschrittene

PHP-Fortgeschrittene Arbeiten mit PHP ohne Einschränkungen

Antwort
 
LinkBack Themen-Optionen Thema bewerten
Alt 09.02.2005, 17:27  
Gast
 
Beiträge: n/a
Standard [Erledigt] connections

Hallo Zusammen,

ich betreibe die Domain htfgames.com auf der zurzeit 7 Online Spiele mit Highscores laufen. Die Domain ist recht gut besucht (10000-20000user/tag). Mein Hoster hat mir eine Email gesendet in der steht, dass ihr Server ziehmlich überlastet ist.

Nun hätte ich ein paar Fragen dazu.
- Denkt ihr auch, dass es an den Highscores liegt? Ich hatte mehrmals täglich die Fehlermelgung (too many connections).
- Könnte ich vielleicht was dagegen machen. Z.B. mit "max_connections" die User beschränken.
- Ich habe überall mysql_close eingefügt. könnte ich sonst noch was machen?

Mein Hoster ist recht gut und ich verstehe nicht ganz weshalb der wegen 7 Highscores probleme haben sollte.

Habe nun keine Ahnung was ich jetzt machen soll und wäre froh, wenn mir jemand helfen könnte.
  Mit Zitat antworten
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 09.02.2005, 17:31  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

Root-Server mieten. Ohne beispielsweise ein Beispiel- Script lässt sich schwer beurteilen, was du verbessern/ performieren könntest
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 09.02.2005, 17:43  
Gast
 
Beiträge: n/a
Standard

Hallo mepeisen,

danke für Deine Antwort. Mein Hoster betreibt einen Linux Server oder wie genau meinst Du das mit Root-Server?

Das hier sind alle Dateien für die Highscore.

Ausgabe für Flash:
PHP-Code:
<?php

require ("config.inc.php");

$db mysql_connect($dbserver,$nutzer,$passwort);

$satz mysql_db_query($dbname,"SELECT * FROM $dbtab ORDER BY `punkte` DESC LIMIT $maxspieler");
$num mysql_num_rows($satz);

echo 
"
<?xml version='1.0'?>
<eintrag>"
;

for (
$i=0$i<$num$i++) {
$lvorname mysql_result($satz,$i,"vorname");
$lnachname mysql_result($satz,$i,"nachname");
$lpunkte mysql_result($satz,$i,"punkte");
$licon mysql_result($satz,$i,"icon");

$lvorname ereg_replace("'"""$lvorname);
$lvorname stripslashes($lvorname);

$lnachname ereg_replace("'"""$lnachname);
$lnachname stripslashes($lnachname);

$lpunkte ereg_replace("'"""$lpunkte);
$lpunkte stripslashes($lpunkte);

$licon ereg_replace("'"""$licon);
$licon stripslashes($licon);

echo 
"
<spieler icon='$licon' vorname='$lvorname' nachname='$lnachname'>$lpunkte</spieler>
"
;

}

echo 
"
</eintrag>
"
;
// variable für flash: ausgbe=schreiben.php
echo ERROR;
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgabe.php?";
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgabe.php?";
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgabe.php?";
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgabe.php?";
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgabe.php?";
echo 
"$zurueck&x=http://www.htfgames.com/highscore/disco/ausgbe.php?";
mysql_close($db);

?>

Ausgabe der PHP Seite (Top 100):
PHP-Code:
 <?php           
// Datenbankverbindung aufbauen 
require ("connect.inc.php");
$db mysql_connect($dbserver,$nutzer,$passwort);
//tabelle daten
$satz mysql_db_query($dbname,"SELECT * FROM $dbtab ORDER BY `punkte` DESC LIMIT $maxspieler");

$result mysql_query ($satz); 
// Benutzerdaten in ein Array auslesen. 
echo ('<table width="350" class="text" border="0" cellpadding="0" cellspacing="0" align="center">');
echo (
"<tr valign='top' align='left' cellpadding='2' bgcolor='#77BBFF'><td width='50'><font color='#ff0000'>Platz</td><td width='90'><font color='#ff0000'>Name</td><td width='90'><font color='#ff0000'>Punkte</td><td width='90'><font color='#ff0000'>Datum</td></tr>");
$platz=1;

while (
$zeile=mysql_fetch_row($satz))
echo (
"<tr align='left'><td>".$platz++."</td><td>$zeile[0]</td><td >$zeile[2]</td><td>$zeile[1]</td></td></tr>");
echo (
"</table>");
mysql_close($db);
?>

Punkte eintragen:
PHP-Code:
<?php
if ($fpunkte != "" && $fvorname != "") {

require (
"config.inc.php");

$db mysql_connect($dbserver,$nutzer,$passwort);
$datum=Date("d.m.Y");

mysql_db_query($dbname,"INSERT INTO $dbtab(vorname,nachname,punkte,icon) VALUES ('$fvorname','$datum','$fpunkte','$ficon')");

$pruf mysql_affected_rows();

// Datensatz angelegt (Ja/Nein)

if ($pruf 0) {
    echo 
'eintrag=1';
} else {
    echo 
'eintrag=0';
}

mysql_close($db);


}
?>
Die Dateien sind für alle Spiele die selben.
Siehst Du vielleicht etwas das Probleme machen könnte?
  Mit Zitat antworten
Alt 09.02.2005, 17:46  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

-> ? http://www.htfgames.com/forum/install/install.php
da scheint noch ein forum zu sein wie sieht es denn da aus? viele user und zugriffe?


mfg
robo47
robo47 ist offline   Mit Zitat antworten
Alt 09.02.2005, 17:49  
Gast
 
Beiträge: n/a
Standard

hallo robo47,

das forum tut zurzeit nicht da ich die config.php rausgenommen habe (musste alle mysqlverbindungen trennen) .

Nein das Forum läuft nicht besonders gut. Es haben sich mitlerweile 5000 User registriert die aber nichts schreiben. Der Game Download war eben früher nur für registrierte User.
  Mit Zitat antworten
Alt 09.02.2005, 17:50  
Gast
 
Beiträge: n/a
Standard Re: connections

Zitat:
Zitat von goody
Habe nun keine Ahnung was ich jetzt machen soll und wäre froh, wenn mir jemand helfen könnte.
Wenn man keine Ahnung hat, dann sollte man keine Onlinespiele programmieren: "mysql closed (too many connections!)"
  Mit Zitat antworten
Alt 09.02.2005, 17:53  
Gast
 
Beiträge: n/a
Standard

@meikel

sehr hilfreicher beitrag ich persönlich hätte keine probleme. es würde ja auch alles funktionieren. mein hoster meckert aber rum.
  Mit Zitat antworten
Alt 09.02.2005, 17:54  
Erfahrener Benutzer
 
Registriert seit: 21.12.2004
Beiträge: 5.234
PHP-Kenntnisse:
Fortgeschritten
mepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblickmepeisen ist ein wunderbarer Anblick
mepeisen eine Nachricht über ICQ schicken mepeisen eine Nachricht über Skype™ schicken
Standard

mysql_close geht früher zu machen, mysql_result solltest du nicht verwenden. Root-Server hat nix direkt mit Linux zu tun. Das bedeutet nur, dass du einen Server komplett mietest und dann alleine mit deiner Präsenz dort drauf bist. Aufwendige Seiten oder Online-Spiele sollten NIE auf einer gesharten Präsenz liegen.

Ansonsten schliesse ich mich meikel an.
__________________
www.php-maven.org PHP und Maven vereint: Build/Deploy/Produktion/Konfiguration, Projekt Management, CI, PHPUnit, zahlreiche Frameworks
Twitter @ https://twitter.com/#!/mepeisen und Facebook @ http://t.co/DZnKSUih
mepeisen ist offline   Mit Zitat antworten
Alt 09.02.2005, 17:58  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

also dinge die mir auf anhieb auffallen

-> kein mysql_db_query verwenden, sondern am anfang des scripts mysql_select db und dann für die querys mysql_query()

-> keine select * from machen sondern lieber die felder nenen und wirklich nur die die du brauchst

dieser absatz hier:
PHP-Code:
$lvorname mysql_result($satz,$i,"vorname");
$lnachname mysql_result($satz,$i,"nachname");
$lpunkte mysql_result($satz,$i,"punkte");
$licon mysql_result($satz,$i,"icon"); 
-> vieleicht durch mysql_fetch_assoc ersetzen und dann mit dem array arbeiten.



lässt sich bestimmt besser mit nem array
robo47 ist offline   Mit Zitat antworten
Alt 09.02.2005, 17:58  
Gast
 
Beiträge: n/a
Standard

Zitat:
Zitat von goody
@meikel

sehr hilfreicher beitrag ich persönlich hätte keine probleme. es würde ja auch alles funktionieren. mein hoster meckert aber rum.
Nicht nur Dein Hoster meckert: auch der externe Datenbankserver meckert über Dein "Script".

Miete Dir einen Server mit mindestens 512 MB RAM, lerne den zu administrieren und zieh mit Deinem Kram um. Ich würde Dich auch rausschmeißen, wenn Du meine Kiste mit Deinen "Hochlast"-Scripten in den Keller ziehen würdest.
  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
mysql klasse - handling mehrerer connections mrSpok PHP Tipps 2006 5 14.04.2006 01:05
"Too many connections" - Brauche Hilfe !!! nicobischof PHP Tipps 2006 13 06.04.2006 14:35
MySQL Server startet nicht mehr richtig... Datenbanken 16 03.03.2006 19:40
Wann persistente MySQL Connections einsetzen? HStev PHP-Fortgeschrittene 2 02.02.2006 13:14
too many connections Datenbanken 22 21.12.2005 09:22
Suche Tipps für Persormance-Steigerung (Geld für Nützliches) Beitragsarchiv 18 16.08.2005 10:57
Too many connections in... ? Datenbanken 1 24.06.2005 15:23
Too many connections?? Datenbanken 9 04.09.2004 10:51
Problem: Zuviele Connections?! Datenbanken 1 20.08.2004 23:48

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
satz connections

Alle Zeitangaben in WEZ +2. Es ist jetzt 20:18 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

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.