| Webmaster-Security Fragen zur richtigen Serverkonfiguration oder Absicherung dynamischer Scripte gehören hier hinein. |
Diskussion: Performance Probleme Apache MySQL? im Forum Webmaster-Security, in der Kategorie Security Area; Anzeige Hallo, ich habe ab und zu paar perfomance Probleme mit meiner Internetseite. Es kommt sporadisch vor, dass ein Seitenaufruf ...
![]() |
| | #1 (permalink) |
| Registriert seit: 22.04.06 ![]() Likes: 0 | Anzeige Hallo, ich habe ab und zu paar perfomance Probleme mit meiner Internetseite. Es kommt sporadisch vor, dass ein Seitenaufruf recht lange dauert. Habe schon Werte angepasst und es wurde dadurch schon teilweise besser. Aber vielleicht könnt ihr mir noch nützliche Tipps geben oder Anleitungen geben, in dem recht einfach erklärt ist, wie ich den Speicher optimal ausnutze von meinen Webserver. Vielleicht habe ich auch irgendwelche grobe Fehlkonfigurationen? Server Informationen: Root-Server fester Arbeitsspeicher 2000 MB CPU 1000 MHz Apache und MySQL auf dem aktuellsten Stand. ca. 1500 unterschiedliche Besucher am Tag ca. 50000 Seitenaufrufe am Tag my.cnf Code: [mysqld] key_buffer = 16M max_allowed_packet = 1M thread_stack = 128K thread_cache_size = 8 max_connections = 100 table_cache = 1024 tmp_table_size = 256M # thread_concurrency = 10 query_cache_limit = 1M query_cache_size = 16M #log_slow_queries = /var/log/mysql/mysql-slow.log #long_query_time = 4 #log-queries-not-using-indexes [mysqldump] quick quote-names max_allowed_packet=16M [mysql] #no-auto-rehash # faster start of mysql but no tab completition [isamchk] key_buffer=16M sort_buffer=8M read_buffer=2M write_buffer=2M [myisamchk] key_buffer=8M sort_buffer=8M read_buffer=2M write_buffer=2M Code: Timeout 300
KeepAlive On
MaxKeepAliveRequests 100
KeepAliveTimeout 15
# prefork MPM
# StartServers: number of server processes to start
# MinSpareServers: minimum number of server processes which are kept spare
# MaxSpareServers: maximum number of server processes which are kept spare
# MaxClients: maximum number of server processes allowed to start
# MaxRequestsPerChild: maximum number of requests a server process serves
<IfModule mpm_prefork_module>
StartServers 6
MinSpareServers 3
MaxSpareServers 10
MaxClients 60
MaxRequestsPerChild 0
</IfModule>
Folgende Werte werden bei mir im phpMyAdmin "rot" angezeigt.
Handler_read_rnd 1,347 k
Handler_read_rnd_next 55 M
Created_tmp_disk_tables 91
Opened_tables 452
Table_locks_waited 665 |
| | |
| | #2 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 443 | Die größten Performance-Probleme entstehen zumeist durch falsche Indizes in den MySQL-Tabellen und schlecht programmierte Seiten. Mit apachetop könntest du einfach mal schauen welche Aufrufe am längsten für die Abarbeitung brauchen. Ausserdem solltest du MaxClients etwas höher setzen um mehr gleichzeitige User auf der Seite abarbeiten zu können. Und auch endlos viele MaxRequestsPerChild auf einem Worker sind nicht unbedingt brauchbar, wenn du PHP nutzt, da dadurch im schlimmsten Fall die Worker im Laufe der Zeit immer mehr RAM fressen. 10000 empfehle ich da als Maximum-Wert für Seiten mit viel Traffic. Ob die Buffer-Größen in MySQL für deine App passen kann man anhand der Configs aber nicht beantworten. Dazu müsste man die Daten der MySQL etwas genauer kennen. Wie groß ist der größte Index? Welche Tabellentypen werden genutzt? Wie oft werden temporäre Tabellen angelegt und wieder gelöscht? Und natürlich stellen sich auch ganz allgemeine Fragen. An welcher Stelle hakt die Performance (CPU, RAM, HDD-IO)? Hast du größere IOWaits auf der Platte? etc. pp.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
| HaBOT | - Anzeige - |
| |
| | #3 (permalink) |
| Hallo TerenceSkill, ich vermute, dein Cache für die Mysql ist zu klein. Daher wird häufig auf die Festplatte zugegriffen, was die Performance nach unten zieht. Lass einfach mal das analyse Script (siehe Anhang) bei Dir durchlaufen. Es zeigt Dir an, welche deiner Mysql Einstellungen i.O sind und welche Du verbesseren kannst. Hier mal meine Mysql Config (muss für dein System nicht die Beste sein!!). # # * Fine Tuning # key_buffer = 16M max_allowed_packet = 16M thread_stack = 128K thread_cache_size = 8 max_connections = 90 table_cache = 4000 #thread_concurrency = 10 # # * Query Cache Configuration # query_cache_limit = 5M query_cache_size = 250M query_prealloc_size = 163840 query_alloc_block_size = 32768 query_cache_min_res_unit=9K tmp_table_size =64M low_priority_updates =1 Ansonsten schau Dir mal den Eaccelerator an. Damit werden kompilierte PHP Codes gecacht. Dies wirkt sich positiv auf die Performance und Serverlast von PHP Anwendungen aus. Installations-Anleitung ebenfalls anbei. Viele Grüße 404
__________________ Major Fault, General Error and Colonel Panic came together to celebrate timeout. ------------------------------------------------ http://www.shick.de/ ------------------------------------------------ | |
| | |
| | #4 (permalink) |
| Registriert seit: 04.08.10 ![]() Likes: 0 | hallo 404 ich wollte fragen ob es dein analysescript auch für windows2k3 gibt weil mein problem ist das der apacheprozess unnormal hoch ist und ich nun vermute das es was mit dem mysql zutun hat. lg akmet |
| | |
| | #5 (permalink) |
| Moderator ![]() Registriert seit: 30.09.06 ![]() ![]() ![]() ![]() ![]() ![]() Likes: 443 | Tuning Primer ist mit cygwin auch unter Windows nutzbar.
__________________ Mein Blog - Mein Job - Diaspora Der Ring uns zu knechten besteht aus 12 Sternen auf blauem Grund. Neue Beiträge im Habo via Twitter - Das HaBo auf FB - Das HaBo bei G+ |
| | |
![]() |
| - Anzeige - | |
| |
| Themen-Optionen | |
| Ansicht | |
| |