Seite 1 von 1
Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 30.05.2009 16:28
von Wintermute42
hi,
ich betreibe mein phpbb 3 derzeit auf einem dediziert Server bei Hetzner (AMD 3800 Single Core, 1GB RAM, Apache2, php 5, mysql 5).
Jetzt hatte ich diese Woche einen neuen Userrekord, und zwar 47 gleichzeitige User. Währenddessen ist mir aufgefallen das das Board sehr träge wurde, insb. auf "große" (IMHO) Anfragen an die Datenbank musste ich 5-10 Sekunden warten (zB .../search.php?search_id=newposts).
Meine Frage ist, ob mit der vorhandenen Hardware sowas "normal" ist, ob es sich lohnt die HW upzugraden, oder ob ich am Board oder an der DB Änderungen machen kann, um die Performance zu steigern.
Danke schonmal!
Re: Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 31.05.2009 01:20
von Balint
Hallo,
Das Problem kann vielfältige Ursachen haben, angefangen von einer lahmen Anbindung an die Außenwelt über ein falsch konfiguriertes System bis hin zu einem falsch/nicht konfiguriertem MySQL-Server.
Ohne konkrete Angaben zum aufgesetzten System, zur Anbindung nach außen, zur Apache- und mySQL-Konfiguration, und den bisher vorgenommenen Einstellungen kann ich daher mit nichts konkretem aufwarten. Wenn du ein paar Einzelheiten schreiben könntest, wäre das sinnvoll bei der Fehlersuche.
Auf einem richtig konfiguriertem Server - sogar im Shared-Hosting-Bereich - machen 47 gleichzeitige User allerdings keine anfragen langsam. Es liegt also nicht an phpBB
Viele Grüße,
Bálint
Re: Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 31.05.2009 13:35
von Wintermute42
hi,
welche Infos bräuchtest du denn? Es ist ein Debian 4.0. Hier ein Teil davon, was phpinfo() ausgibt:
PHP
Code: Alles auswählen
PHP Version 5.2.0-8+etch15
System Linux 2.6.8-3-k7 #1 Tue Dec 5 23:58:25 UTC 2006 i686
Build Date May 1 2009 10:13:14
Server API Apache 2.0 Handler
Virtual Directory Support disabled
Configuration File (php.ini) Path /etc/php5/apache2/php.ini
Scan this dir for additional .ini files /etc/php5/apache2/conf.d
additional .ini files parsed /etc/php5/apache2/conf.d/gd.ini, /etc/php5/apache2/conf.d/imap.ini, /etc/php5/apache2/conf.d/ldap.ini, /etc/php5/apache2/conf.d/mcrypt.ini, /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/pdo.ini, /etc/php5/apache2/conf.d/pdo_mysql.ini
PHP API 20041225
PHP Extension 20060613
Zend Extension 220060519
Debug Build no
Thread Safety disabled
Zend Memory Manager enabled
IPv6 Support enabled
Registered PHP Streams zip
Registered Stream Socket Transports tcp, udp, unix, udg, ssl, sslv3, sslv2, tls
Registered Stream Filters string.rot13, string.toupper, string.tolower, string.strip_tags, convert.*, consumed, convert.iconv.*, bzip2.*, zlib.*
Apache Environment
Code: Alles auswählen
Apache EnvironmentVariable Value
HTTP_USER_AGENT Opera/9.63 (Windows NT 5.1; U; de) Presto/2.1.1
HTTP_HOST torens.net
HTTP_ACCEPT text/html, application/xml;q=0.9, application/xhtml+xml, image/png, image/jpeg, image/gif, image/x-xbitmap, */*;q=0.1
HTTP_ACCEPT_LANGUAGE de-DE,de;q=0.9,en;q=0.8
HTTP_ACCEPT_CHARSET iso-8859-1, utf-8, utf-16, *;q=0.1
HTTP_CONNECTION Keep-Alive
HTTP_PRAGMA no-cache
HTTP_CACHE_CONTROL no-cache
PATH /usr/local/bin:/usr/bin:/bin
SERVER_SIGNATURE no value
SERVER_SOFTWARE Apache/2.2.3 (Debian) mod_python/3.2.10 Python/2.4.4 PHP/5.2.0-8+etch15
SERVER_NAME torens.net
SERVER_ADDR 88.198.38.181
SERVER_PORT 80
REMOTE_HOST *.kabel-badenwuerttemberg.de
REMOTE_ADDR 91.89.x.x
DOCUMENT_ROOT /home/torens/domains/torens.net/public_html
SERVER_ADMIN [no address given]
SCRIPT_FILENAME /home/torens/domains/torens.net/public_html/phpinfo.php
REMOTE_PORT 42100
GATEWAY_INTERFACE CGI/1.1
SERVER_PROTOCOL HTTP/1.0
REQUEST_METHOD GET
QUERY_STRING no value
REQUEST_URI /phpinfo.php
SCRIPT_NAME /phpinfo.php
mySQL
Code: Alles auswählen
MySQL Support enabled
Active Persistent Links 0
Active Links 0
Client API version 5.0.32
MYSQL_MODULE_TYPE external
MYSQL_SOCKET /var/run/mysqld/mysqld.sock
MYSQL_INCLUDE -I/usr/include/mysql
MYSQL_LIBS -L/usr/lib -lmysqlclient
Directive Local Value Master Value
mysql.allow_persistent On On
mysql.connect_timeout 60 60
mysql.default_host no value no value
mysql.default_password no value no value
mysql.default_port no value no value
mysql.default_socket no value no value
mysql.default_user no value no value
mysql.max_links Unlimited Unlimited
mysql.max_persistent Unlimited Unlimited
mysql.trace_mode Off Off
Re: Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 31.05.2009 15:06
von Balint
Hallo,
das, was phpinfo ausgibt, ist leider nicht ausreichend bzw. nicht das Richtige. Verstehe es nicht falsch, aber ich würde dir gerne die Seite
http://root-und-kein-plan.ath.cx/ empfehlen. Auf
www.linuxforen.de würdest du zudem über solche allgemeinen Fragen bessere Auskünfte bekommen als hier, wo die meisten über die Administration von phpBB auf einem Shared-Host grübeln und nicht über einen eigenen Server verfügen.
Das meiste wirst du mit einer Optimierung der my.cnf (der MySQL-Konfigurationsdatei) ausrichten, google mal nach "mysql optimierung" und versuche die Ratschläge mit anschließendem Benchmarking zu befolgen.
Viele Grüße,
Bálint
Re: Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 31.05.2009 15:33
von coolsoft
Ich hab als Anfänger gerade einen mysql Server gut in Bewegung gebracht.
Geholfen hat mir der Link:
http://phpperformance.de/mysql-systemva ... ffer_size/ -
nicht nur der eine Artikel. sondern alle Links die dort genannt sind.
(also auch drumrum-lesen)
Da sind auch ein paar Basics genannt (Speichergrösse relativ zum verfügbaren Arbeitsspeicher, etc)
Re: Frage nach nötiger Serverperformance/Boardoptimierung
Verfasst: 31.05.2009 18:22
von Wintermute42
Balint hat geschrieben:
das, was phpinfo ausgibt, ist leider nicht ausreichend bzw. nicht das Richtige.
Was wären denn dann die richtigen Infos?
Da sind einige Links leider tot, und grundlegende Kentnisse habe ich schon. Ich suche schon speziellen Support für mysql/phpbb. Aber deine Aussage das 50 User kein Problem darstellen sollten, ist ja auch schonmal ok
Danke! Das ist in der Tat interessant, da lese ich mich mal durch.
Noch eine allgemeine Frage: Wie würdet ihr das Benchmarken, bzw. die Situation mit 50 Usern nachstellen, um zu sehen wie sich die DB verhält?