Rootserver Performance Problem

rsjet

New Member
Wir setzen seit etwa 1 Jahr einen 1und1 Rootserver ein, seit etwa 2 Wochen werden die Seiten auf dem Server nur schleppend angezeigt, ich weiß nicht woher das kommt. Ich hab schon in einigen Foren nachgelesen und auch schon einiges ausprobiert, es ist zwar etwas besser geworden, aber zufriedenstellent läuft der Server irgendwie immer noch nicht.

Hier mal der top:
top - 19:44:05 up 1:24, 2 users, load average: 13.23, 13.14, 13.65
Mem: 2025600k total, 1018964k used, 1006636k free, 8872k buffers
Swap: 1953784k total, 0k used, 1953784k free, 532272k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2344 mysql 16 0 256m 81m 4592 S 15.6 4.1 24:41.10 mysqld
20415 wwwrun 18 0 142m 28m 4028 R 3.3 1.4 0:30.11 httpd2-prefork
21064 wwwrun 18 0 142m 28m 4052 R 11.3 1.4 0:26.90 httpd2-prefork
21065 wwwrun 15 0 134m 21m 4156 S 0.0 1.1 0:25.29 httpd2-prefork
21305 wwwrun 17 0 142m 28m 4020 R 10.6 1.4 0:24.99 httpd2-prefork
22374 wwwrun 16 0 135m 21m 4004 S 0.0 1.1 0:13.64 httpd2-prefork
22403 wwwrun 17 0 142m 28m 3948 R 10.9 1.4 0:11.68 httpd2-prefork
21968 wwwrun 15 0 135m 21m 3944 S 0.7 1.1 0:10.81 httpd2-prefork
22373 wwwrun 15 0 139m 25m 3940 S 0.0 1.3 0:10.27 httpd2-prefork
22574 wwwrun 15 0 137m 23m 4000 S 0.0 1.2 0:10.12 httpd2-prefork
22579 wwwrun 17 0 142m 28m 4004 R 10.6 1.4 0:08.46 httpd2-prefork
22395 wwwrun 16 0 135m 21m 4012 S 0.3 1.1 0:07.16 httpd2-prefork
22730 wwwrun 15 0 137m 23m 3980 S 0.0 1.2 0:06.81 httpd2-prefork
22735 wwwrun 16 0 137m 23m 3932 S 0.0 1.2 0:06.64 httpd2-prefork

Meine bisherigen Maßnahmen waren.

Beim MySQl hab ich in der my.cnf den QueryCache von 0 auf 10MB erhöht, das hat am meisten gebracht.

in der server-tuning.conf hab ich nach Anleitung dieses Forums auch Veränderungen vorgenommen

KeepAliveRequests 200
KeepAliveTimeout 2

in der prefork.c
Startservers 5
MinSpareServers 5
MaxSpareServers 10
ServerLimit 400 zuvor 150
MaXClients 400 zuvor 150
MaxRequestPerChild 8000 von zuvor 0

Der Load average Wert war auch schon bei über 40, echt bedenklich oder?
Wir generieren die Webseite fast ausschließlich aus der Datenbank!!

Wäre dankbar für jeden Tipp

LG
 
Last edited by a moderator:
1.
tuning primer Script laufen lassen

2.
nicht benötigte Apache Module ausklammern


3.
mach mal ein
Code:
netstat -n |grep ESTAB|grep '\:80 '|wc -l
und ein
Code:
top
wo man die Anzahl der Tasks sehen kann.
 
Last edited by a moderator:
apache2.conf
Code:
Timeout 30
KeepAlive On
MaxKeepAliveRequests 150
KeepAliveTimeout 2

<IfModule prefork.c>
StartServers       2
MinSpareServers    5
MaxSpareServers    10
ServerLimit       100
MaxClients        100
MaxRequestsPerChild  4000
<IfModule>

HostnameLookups off
wären ~ 1500 MB RAM und my.cnf
Code:
[mysqld]

key_buffer = 20M
net_buffer_length = 8K

sort_buffer_size = 128K
myisam_sort_buffer_size = 128K
read_buffer_size = 256K
read_rnd_buffer_size = 512K
join_buffer_size = 2M

query_cache_size = 4M
thread_cache = 32
table_cache = 1024
max_allowed_packet = 256K

max_connections = 100
[COLOR="Blue"]wait_timeout = 30 [/COLOR][COLOR="Red"] testen![/COLOR]
low_priority_updates = 1
long_query_time = 2
(128 + 128 + 256 + 512) * 100 = 102 MB + 20 MB = ~ 125 MB

wir hätten dann noch ausreichend Luft um buffers/caches, threads, tables zu erhöhen oder max_connections
 
Last edited by a moderator:
Teilerfolg aber noch nicht optimal!

Diese Eintellungen haben echt schon ne ganze Menge gebracht, supi!!:)
wobei ich Timeout und HostnameLookups nicht gefunden habe steht nicht in der httpd.conf, server-tuning.conf, default-server.conf unter Suse 9.3, alle anderen Werte hab ich gefunden und geändert.

Timeout 30
KeepAlive On
MaxKeepAliveRequests 150
KeepAliveTimeout 2

<IfModule prefork.c>
StartServers 2
MinSpareServers 5
MaxSpareServers 10
ServerLimit 100
MaxClients 100
MaxRequestsPerChild 4000
<IfModule>

HostnameLookups off


mit diesem Ergebnis:

top - 10:50:56 up 16:31, 1 user, load average: 6.08, 4.34, 2.84
Tasks: 129 total, 9 running, 119 sleeping, 1 stopped, 0 zombie
Cpu(s): 91.4% us, 8.3% sy, 0.0% ni, 0.0% id, 0.0% wa, 0.0% hi, 0.3% si
Mem: 2025600k total, 1954376k used, 71224k free, 19524k buffers
Swap: 1953784k total, 16k used, 1953768k free, 1188836k cached

PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2344 mysql 15 0 269m 163m 4804 S 40.8 8.3 272:18.94 mysqld
7080 wwwrun 16 0 142m 27m 3920 R 33.8 1.4 0:01.05 httpd2-prefork
6915 wwwrun 15 0 143m 29m 3968 S 13.3 1.5 0:01.75 httpd2-prefork
6531 wwwrun 15 0 136m 23m 4052 S 3.3 1.2 0:03.99 httpd2-prefork
6767 wwwrun 15 0 136m 22m 3972 S 2.7 1.1 0:04.14 httpd2-prefork
6959 wwwrun 15 0 135m 21m 3936 S 2.0 1.1 0:03.50 httpd2-prefork
6768 wwwrun 15 0 135m 21m 3972 S 1.3 1.1 0:03.68 httpd2-prefork
7088 wwwrun 16 0 135m 21m 3880 S 1.3 1.1 0:00.04 httpd2-prefork
7119 wwwrun 18 0 135m 20m 3716 R 1.0 1.0 0:00.03 httpd2-prefork
7120 wwwrun 18 0 134m 19m 3532 R 0.3 1.0 0:00.01 httpd2-prefork

auch das tuning primer Script hab ich schon mal laufen lassen, waren einige Hinweise zur Optimierung drin, da werde ich jetzt mal step by step durchgehen und dann die Ergebnisse posten.

Schon mal vielen danke
 
übernehme meine Variables für die my.cnf und poste dann was tuning primer sagt.

Du kannst nicht nach tuning primer alleine gehen, weil das Script den RAM nicht berücksichtigt.
Code:
MEMORY USAGE
Max Memory Ever Allocated :
Configured Max Per-thread Buffers :
Configured Max Global Buffers : 
[COLOR="Red"]Configured Max Memory Limit : 350 MB[/COLOR]
Total System Memory :
Max memory limit seem to be within acceptable norms
darf nicht höher als ~ 350 MB sein.

Hast du schon Apache Module ausgeklammert?
 
Last edited by a moderator:
Zwischenstand

Hallo habe jetzt einige veränderungen nach dem ersten tuning_primer.sh Lauf vorgenommen und das Script dabb noch einmal laufen lassen.
Mit folgendem Ergebnis:
Code:
        -- MYSQL PERFORMANCE TUNING PRIMER --
             - By: Matthew Montgomery -

MySQL Version 4.1.10a-log x86_64

Uptime = 0 days 1 hrs 32 min 46 sec
Avg. qps = 1066
Total Questions = 5937161
Threads Connected = 6

Warning: Server has not been running for at least 48hrs.
It may not be safe to use these recommendations

To find out more information on how each of these
runtime variables effects performance visit:
http://dev.mysql.com/doc/refman/4.1/en/server-system-variables.html

SLOW QUERIES
Current long_query_time = 3 sec.
You have 24423 out of 6021261 that take longer than 3 sec. to complete
The slow query log is enabled.
Your long_query_time seems to be fine

WORKER THREADS
Current thread_cache_size = 32
Current threads_cached = 29
Current threads_per_sec = 0
Historic threads_per_sec = 0
Your thread_cache_size is fine

MAX CONNECTIONS
Current max_connections = 250
Current threads_connected = 3
Historic max_used_connections = 61
The number of used connections is 24% of the configured maximum.
Your max_connections variable seems to be fine.

MEMORY USAGE
Max Memory Ever Allocated : 286 M
Configured Max Per-thread Buffers : 856 M
Configured Max Global Buffers : 78 M
Configured Max Memory Limit : 934 M
Total System Memory : 3.79 G
Max memory limit seem to be within acceptable norms

KEY BUFFER
Current MyISAM index space = 381 M
Current key_buffer_size = 64 M
Key cache miss rate is 1 : 1270
Key buffer fill ratio = 26.00 %
Your key_buffer_size seems to be too high.
Perhaps you can use these resources elsewhere

QUERY CACHE
Query cache is enabled
Current query_cache_size = 4 M
Current query_cache_used = 2 M
Current query_cach_limit = 2 M
Current Query cache fill ratio = 69.38 %
MySQL won't cache query results that are larger than query_cache_limit in size

SORT OPERATIONS
Current sort_buffer_size = 512 K
Current record/read_rnd_buffer_size = 508 K
Sort buffer seems to be fine

JOINS
Current join_buffer_size = 2.00 M
You have had 1879 queries where a join could not use an index properly
You should enable "log-queries-not-using-indexes"
Then look for non indexed joins in the slow query log.
If you are unable to optimize your queries you may want to increase your
join_buffer_size to accommodate larger joins in one pass.

Note! This script will still suggest raising the join_buffer_size when
ANY joins not using indexes are found.

OPEN FILES LIMIT
Current open_files_limit = 4260 files
The open_files_limit should typically be set to at least 2x-3x
that of table_cache if you have heavy MyISAM usage.
Your open_files_limit value seems to be fine

TABLE CACHE
Current table_cache value = 2000 tables
You have a total of 1809 tables
You have 635 open tables.
The table_cache value seems to be fine

TEMP TABLES
Current max_heap_table_size = 16 M
Current tmp_table_size = 32 M
Of 8564 temp tables, 77% were created on disk
Effective in-memory tmp_table_size is limited to max_heap_table_size.
Perhaps you should increase your tmp_table_size and/or max_heap_table_size
to reduce the number of disk-based temporary tables
Note! BLOB and TEXT columns are not allow in memory tables.
If you are using these columns raising these values might not impact your
ratio of on disk temp tables.

TABLE SCANS
Current read_buffer_size = 252 K
Current table scan ratio = 550 : 1
read_buffer_size seems to be fine

TABLE LOCKING
Current Lock Wait ratio = 1 : 4587
You may benefit from selective use of InnoDB.

Das sieht schon mal ganz gut aus oder?

Der Top zeigt auch eine Verbesserung momentan:
Code:
top - 10:42:01 up 1 day, 16:22,  2 users,  load average: 4.14, 2.76, 2.59
Tasks: 116 total,   7 running, 109 sleeping,   0 stopped,   0 zombie
Cpu(s): 91.4% us,  8.6% sy,  0.0% ni,  0.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   2025600k total,  1281092k used,   744508k free,    12704k buffers
Swap:  1953784k total,       16k used,  1953768k free,   745700k cached

Aber irgenwie reagiert der Server z.b. beim Login mit SSH (Putty) immer noch träge, gibt es noch Möglichkeiten, da noch was zu verbessern?
Danke
 
1.

key_buffer = 32M
join_buffer_size = 12 M
thread_cache = 128 (testen)
max_connections = 100

Configured Max Memory Limit : 350M (darf nicht höher als 350 sein, sonst geht dir der RAM aus)

2.

und unbedingt nicht benötigte Apache Module deaktivieren (mit # ausklammern)

3.

neueste Version von Putty verwenden

4.

kannst du mal ein
Code:
ps axu --sort:command
posten?
 
Last edited by a moderator:
Server voll überlastet!

Mußt den Server gerade neu starten, ging gar nichts mehr load average bei über 50.
Hier der ps axu --sort:command
Code:
USER       PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
root      2180  0.0  0.0  10268  1032 ?        Sl   16:18   0:00 /usr/sbin/3dm2
root      2710  0.0  0.0   2556   536 ttyS0    Ss+  16:18   0:00 /sbin/agetty -L
root       234  0.0  0.0      0     0 ?        S<   16:17   0:00 [aio/0]
root       904  0.0  0.0      0     0 ?        S<   16:18   0:00 [ata/0]
root      2953  0.0  0.1   9616  2232 pts/0    S    16:19   0:00 bash
root      3385  0.0  0.1   9616  2232 pts/1    S    16:34   0:00 bash
root       236  0.0  0.0      0     0 ?        S    16:17   0:00 [cifsdnotifyd]
root       235  0.0  0.0      0     0 ?        S    16:17   0:00 [cifsoplockd]
root      2219  0.0  0.0   6940   884 ?        S    16:18   0:00 /usr/sbin/couri
root      2230  0.0  0.0   6944   884 ?        S    16:18   0:00 /usr/sbin/couri
root      2242  0.0  0.0   6940   884 ?        S    16:18   0:00 /usr/sbin/couri
root      2249  0.0  0.0   6944   884 ?        S    16:18   0:00 /usr/sbin/couri
root      2217  0.0  0.0   9220   824 ?        S    16:18   0:00 /usr/lib/courie
root      2228  0.0  0.0   9224   824 ?        S    16:18   0:00 /usr/lib/courie
root      2237  0.0  0.0   9220   820 ?        S    16:18   0:00 /usr/lib/courie
root      2247  0.0  0.0   9224   824 ?        S    16:18   0:00 /usr/lib/courie
root      2327  0.0  0.0   9996   744 ?        Ss   16:18   0:00 /usr/sbin/cron
root      1727  0.0  0.0   2576   228 ?        Ss   16:18   0:00 /sbin/dhcpcd -C
root         5  0.0  0.0      0     0 ?        S<   16:17   0:00 [events/0]
root      2611  0.0  0.8 129796 16720 ?        Ss   16:18   0:00 /usr/sbin/httpd
root      2635  0.0  0.4 129768  9744 ?        S    16:18   0:00 /usr/sbin/httpd
wwwrun    4480  4.3  1.1 139160 23376 ?        S    17:18   0:18 /usr/sbin/httpd
wwwrun    4484  2.5  0.8 133884 17732 ?        S    17:19   0:09 /usr/sbin/httpd
wwwrun    4519  5.2  0.9 135712 19788 ?        S    17:20   0:16 /usr/sbin/httpd
wwwrun    4524  2.3  1.1 138884 22900 ?        S    17:20   0:07 /usr/sbin/httpd
wwwrun    4526  6.5  1.1 139548 23312 ?        R    17:20   0:20 /usr/sbin/httpd
wwwrun    4532  2.0  0.8 133452 17380 ?        S    17:21   0:05 /usr/sbin/httpd
wwwrun    4535  2.7  0.8 133168 17056 ?        S    17:21   0:07 /usr/sbin/httpd
wwwrun    4541  2.0  0.9 134856 18940 ?        S    17:21   0:05 /usr/sbin/httpd
wwwrun    4548  7.4  0.8 132764 16760 ?        S    17:22   0:14 /usr/sbin/httpd
wwwrun    4552  2.9  0.8 133616 17184 ?        S    17:22   0:04 /usr/sbin/httpd
wwwrun    4555  2.7  0.8 132500 16244 ?        S    17:22   0:04 /usr/sbin/httpd
wwwrun    4556  0.4  0.8 133404 17140 ?        S    17:23   0:00 /usr/sbin/httpd
wwwrun    4557  4.5  0.8 133232 17020 ?        S    17:24   0:04 /usr/sbin/httpd
wwwrun    4558  2.1  0.8 132968 16660 ?        S    17:24   0:01 /usr/sbin/httpd
wwwrun    4559  1.1  0.8 133240 17008 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4560  0.5  0.8 132900 16604 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4561 11.9  1.1 139472 23088 ?        R    17:24   0:08 /usr/sbin/httpd
wwwrun    4562  0.0  0.7 131892 15200 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4563  0.2  0.8 132788 16496 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4565  1.4  0.8 132788 16524 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4571  0.4  0.8 132996 16776 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4572  0.0  0.7 131592 14824 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4573  1.7  0.8 133104 16664 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4574  0.1  0.7 131652 15132 ?        S    17:24   0:00 /usr/sbin/httpd
wwwrun    4587  1.4  0.7 132500 16192 ?        S    17:25   0:00 /usr/sbin/httpd
wwwrun    4590  1.1  0.8 132584 16280 ?        S    17:25   0:00 /usr/sbin/httpd
wwwrun    4592  3.2  1.1 138820 22400 ?        R    17:25   0:00 /usr/sbin/httpd
wwwrun    4593  1.0  0.8 132960 16648 ?        S    17:25   0:00 /usr/sbin/httpd
wwwrun    4617  0.0  0.5 129796 10268 ?        S    17:25   0:00 /usr/sbin/httpd
root         1  0.0  0.0    728   256 ?        S    16:17   0:00 init [3]
root        11  0.0  0.0      0     0 ?        S<   16:17   0:00 [kacpid]
root        10  0.0  0.0      0     0 ?        S<   16:17   0:00 [kblockd/0]
root       942  0.0  0.0      0     0 ?        S<   16:18   0:00 [kcryptd/0]
root         6  0.0  0.0      0     0 ?        S<   16:17   0:00 [khelper]
root       951  0.0  0.0      0     0 ?        S    16:18   0:00 [kjournald]
root      2185  0.0  0.0   2588   432 ?        Ss   16:18   0:00 /sbin/klogd -c
root       943  0.0  0.0      0     0 ?        S<   16:18   0:00 [kmirrord]
root       828  0.0  0.0      0     0 ?        S<   16:17   0:00 [kseriod]
root         3  0.0  0.0      0     0 ?        RN   16:17   0:00 [ksoftirqd/0]
root       233  0.0  0.0      0     0 ?        S    16:17   0:00 [kswapd0]
root         7  0.0  0.0      0     0 ?        S<   16:17   0:00 [kthread]
mailman   2544  0.0  0.2  44112  5996 ?        Ss   16:18   0:00 /usr/bin/python
root         2  0.0  0.0      0     0 ?        S    16:17   0:00 [migration/0]
root      2704  0.0  0.0   2996   688 tty1     Ss+  16:18   0:00 /sbin/mingetty
root      2705  0.0  0.0   2992   680 tty2     Ss+  16:18   0:00 /sbin/mingetty
root      2706  0.0  0.0   2992   680 tty3     Ss+  16:18   0:00 /sbin/mingetty
root      2707  0.0  0.0   2992   680 tty4     Ss+  16:18   0:00 /sbin/mingetty
root      2708  0.0  0.0   2992   680 tty5     Ss+  16:18   0:00 /sbin/mingetty
root      2709  0.0  0.0   2992   684 tty6     Ss+  16:18   0:00 /sbin/mingetty
root      2252  0.0  0.3  25232  7448 ?        Ss   16:18   0:00 /usr/bin/perl /
mysql     2505 15.5  5.5 235148 111684 ?       Sl   16:18  10:24 /usr/sbin/mysql
root      2468  0.0  0.0   7880  1400 ?        S    16:18   0:00 /bin/sh /usr/bi
named     2448  0.0  0.1  47776  3140 ?        Ssl  16:18   0:00 /usr/sbin/named
root      2334  0.0  0.0  24176  1080 ?        Ssl  16:18   0:00 /usr/sbin/nscd
ntp       2282  0.0  0.2  12344  4260 ?        SLs  16:18   0:00 /usr/sbin/ntpd
root       231  0.0  0.0      0     0 ?        S    16:17   0:00 [pdflush]
root       232  0.0  0.0      0     0 ?        S    16:17   0:00 [pdflush]
root      4618  0.0  0.0   3928   928 pts/1    R+   17:25   0:00 ps axu --sort:c
mailman   2546  0.0  0.3  38128  7716 ?        S    16:18   0:00 /usr/bin/python
mailman   2547  0.0  0.3  38184  7744 ?        S    16:18   0:00 /usr/bin/python
mailman   2548  0.0  0.3  38128  7728 ?        S    16:18   0:00 /usr/bin/python
mailman   2549  0.0  0.3  38136  7716 ?        S    16:18   0:00 /usr/bin/python
mailman   2550  0.0  0.3  38404  7780 ?        S    16:18   0:00 /usr/bin/python
mailman   2551  0.0  0.4  39028  8552 ?        S    16:18   0:00 /usr/bin/python
mailman   2552  0.0  0.3  38400  7792 ?        S    16:18   0:00 /usr/bin/python
mailman   2553  0.0  0.3  38184  7716 ?        S    16:18   0:00 /usr/bin/python
qmailq    2324  0.0  0.0   2548   380 ?        S    16:18   0:00 qmail-clean
root      2322  0.0  0.0   2592   396 ?        S    16:18   0:00 qmail-lspawn ./
qmailr    2323  0.0  0.0   2592   432 ?        S    16:18   0:00 qmail-rspawn
qmails    2319  0.0  0.0   2608   436 ?        S    16:18   0:00 qmail-send
root      1561  0.0  0.0   3604   300 ?        Ss   16:18   0:00 /sbin/resmgrd
root       899  0.0  0.0      0     0 ?        S<   16:17   0:00 [scsi_eh_0]
root       909  0.0  0.0      0     0 ?        S<   16:18   0:00 [scsi_eh_1]
root       910  0.0  0.0      0     0 ?        S<   16:18   0:00 [scsi_eh_2]
bpkl9pa   2907  0.0  0.1   9876  2228 pts/0    Ss   16:18   0:00 -sh
bpkl9pa   3358  0.0  0.1   9876  2228 pts/1    Ss   16:33   0:00 -sh
root      2555  0.0  1.7  64548 35196 ?        Ss   16:18   0:00 /usr/sbin/spamd
popuser   2577  0.0  1.6  64548 34416 ?        S    16:18   0:00 spamd child
popuser   2578  0.0  1.6  64548 34372 ?        S    16:18   0:00 spamd child
qmaill    2321  0.0  0.0   2552   496 ?        S    16:18   0:00 splogger qmail
root      2170  0.0  0.0  28628  1340 ?        Ss   16:18   0:00 /usr/sbin/sshd
root      2638  0.0  0.1  46400  2960 ?        Ss   16:18   0:00 sshd: bpkl9pa [
bpkl9pa   2906  0.0  0.0  46404  1884 ?        S    16:18   0:01 sshd: bpkl9pa@p
root      3348  0.0  0.1  46276  2952 ?        Ss   16:33   0:00 sshd: bpkl9pa [
bpkl9pa   3357  0.0  0.0  46404  1828 ?        S    16:33   0:00 sshd: bpkl9pa@p
root      2181  0.0  0.0   2584   504 ?        Ss   16:18   0:00 /sbin/startpar
root      2365  0.0  0.0   2580   500 ?        Ss   16:18   0:00 /sbin/startpar
root      2947  0.0  0.1  33812  2136 pts/0    S    16:19   0:00 su
root      3382  0.0  0.1  33824  2140 pts/1    S    16:34   0:00 su
root      2182  0.0  0.0   9128   648 ?        Ss   16:18   0:00 /sbin/syslog-ng
root      2970  0.0  0.0   4420  1208 pts/0    S+   16:19   0:03 top
root      1347  0.0  0.0   2680   672 ?        S<s  16:18   0:00 udevd
root         4  0.0  0.0      0     0 ?        S    16:17   0:00 [watchdog/0]
root      1048  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfsbufd]
root      1051  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfsbufd]
root      1054  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfsbufd]
root      1057  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfsbufd]
root       238  0.0  0.0      0     0 ?        S<   16:17   0:00 [xfsdatad/0]
root       237  0.0  0.0      0     0 ?        S<   16:17   0:00 [xfslogd/0]
root      1049  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfssyncd]
root      1052  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfssyncd]
root      1055  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfssyncd]
root      1058  0.0  0.0      0     0 ?        S<   16:18   0:00 [xfssyncd]
root      2374  0.0  0.0   8760   876 ?        Ss   16:18   0:00 /usr/sbin/xinet

Noch ne Frage, sorry aber wo stellt man die "Configured Max Memory Limit : 350M" ein!
ich finde den eintrag nirgendwo!

Tausend Dank
Gruß Roland
 
Last edited by a moderator:
da sehe ich ~ 30 httpd Prozesse die alle schlafen 's' = sleeping und nur warten (3 mit 'r' = reading)
Jeder httpd Prozess belegt ~ 17 MB RAM (RSS).
Code:
Timeout 30
KeepAlive On
MaxKeepAliveRequests 150
KeepAliveTimeout 2

<IfModule prefork.c>
StartServers       2
MinSpareServers    5
MaxSpareServers    10
ServerLimit       75
[COLOR="Red"]MaxClients        75[/COLOR]
MaxRequestsPerChild  4000
<IfModule>

HostnameLookups off
MaxClients 75 sollten eigentlich mehr als ausreichend sein.

'Configured Max Memory Limit' zeigt dir Tuning Primer Script an und errechnet sich aus key_buffer + ((sort_buffer + myisam_sort_buffer + read_buffer + read_rdn_buffer) * max_connection)

Configured Max Memory Limit darf nicht höher sein als ~ 400 MB, sonst reicht dein RAM nicht aus und der Load geht hoch.

Kannst ja selbst ausrechnen. Jeder MaxClient benötigt 17 MB RAM, macht bei 75 + 5 (MinSpare) = 1360 MB RAM. Plesk, Qmail, Bind ect. benötigen auch nochmal RAM, sagen wir mal 250 MB?

1360 + 250 = 1610 MB RAM, bleiben für MySQL noch ~ 400 MB RAM

?

hats du in der my.cnf jetzt thread_cache = 128?

wenn ja, mach den wieder kleiner auf 32
 
Last edited by a moderator:
Code:
MEMORY USAGE
Max Memory Ever Allocated : 286 M
Configured Max Per-thread Buffers : 856 M
Configured Max Global Buffers : 78 M
[COLOR="Red"]Configured Max Memory Limit : 934 M[/COLOR]
Total System Memory : 3.79 G
Max memory limit seem to be within acceptable norms
MySQL nimmt sich bis zu 934 MB RAM.

Wenn RAM nicht ausreichend vorhanden wird teilweise auf die Festplatte ausgelagert (Swap) und die Kiste schaukelt sich hoch.

Falls du tatsächlich 250 max_connections benötigst, dann mußt du die buffers u. caches kleiner machen. (read_buffer, read_rdn_buffer, sort_buffer, myisam_sort_buffer).

key_buffer u. query_cache kann man lassen. evtl. thread_cache auf 16 verkleinern.
 
der Server schnurrt wieder!!

Erstmal recht herzlichen Dank an noto, waren echt gute Tipps, bin jetzt in Sachen Serveroptimierung wieder etwas schlauer.
Trotz der versch. Optimierungs-Schritte, und der dadurch verbesserten Performance des Servers, hatte ich zu Hochzeiten immer noch einen load average von über 40.
Der Hinweis mit den schlafenden Prozessen einer best. Tabelle in MySQL, war für uns dann der Hinweis, mal diese Abfrage genauer zu durchläuchten.
Wir tragen jeden Zugriff ( ca. 500 pro Minute) auf unsere Weseite in eine MySQL-Tabelle, die die Statistik der Webseite mitprotokoliert.
Zusätzlich wird aus dieser Tabelle noch gelesen, ob die Session des Users evtl. schon abgelaufen ist.
Diese Abfrage führte zu vielen wartenden Aufrufen der Tabelle, die sich dann hochschaukeln.
Wir haben dafür jetzt eine anderen Variiante um die Statitik und die Session abzufragen und siehe da der Server schnurrt wieder load averrage < 1.

Es war mal wieder so wie oft im Forum erwähnt, ein Fehler der aufgrund schlecht programmierter Abfragen in MySQL hervorgerufen wurde.
Aber durch die Optimierung des Server und der verbesserten Abfrage in MySQL, haben wir jetzt wieder ein schnellen Server.

Danke

Gruß Roland
 
Back
Top