Arbeitsspeicher vom vServer / für Asterisk optimieren

Nimrod

Aktives Mitglied
Mitglied seit
26 Jul 2005
Beiträge
1,172
Punkte für Reaktionen
0
Punkte
0
Hallo Leute,

ich hoffe die Frage ist nicht zu speziell für dieses Forum, ich weiß es gibt andere Foren die mehr darauf spezialisiert sind aber vielleicht weiß ja jemand in diesem Forum gut genug bescheid.
Ich hab einen vServer mit diesen Daten:

Debian 3.1
260 MB RAM burstable bis 1024 MB
1000 MHz burstable bis 2000 MHz

Asterisk 1.4.14 und Group Office (Groupware) installiert.

Ich hab letztens ein paar mal über 260 MB Ram verbraucht und daher in meinem vpsadmin dementsprechende Meldungen bekommen. Wenn einige dieser Programme sowas verursachen werden die beendet, bei Asterisk wär das unpraktisch.

Über vzfree habe ich erfahren dass ich ca. 235 MB von 256 MB zugesichertem Ram verwende.
Über top habe ich das angezeigt bekommen:

Code:
[FONT="Courier New"]top - 19:11:12 up 8 days, 14:38,  1 user,  load average: 0.10, 0.05, 0.00
Tasks:  35 total,   1 running,  34 sleeping,   0 stopped,   0 zombie
Cpu(s):  0.0% us,  0.0% sy,  0.0% ni, 100.0% id,  0.0% wa,  0.0% hi,  0.0% si
Mem:   6220276k total,  6198984k used,    21292k free,    36780k buffers
Swap:  8385920k total,   942396k used,  7443524k free,   791720k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND
    1 root      16   0  1504  476  452 S  0.0  0.0   0:00.06 init
 1491 root      15   0  1560  520  440 S  0.0  0.0   0:03.45 syslogd
 1589 root      22   0  1508  316  300 S  0.0  0.0   0:00.00 klogd
 3853 clamav    25   0 54612  12m  840 S  0.0  0.2   0:16.28 clamd
 3871 clamav    16   0 12012  456  444 S  0.0  0.0   0:00.01 clamsmtpd
 3880 root      16   0  1540  456  416 S  0.0  0.0   0:00.02 inetd
 5125 root      19   0  2508 1012 1000 S  0.0  0.0   0:00.00 mysqld_safe
 5248 mysql     16   0 24392 5840 3660 S  0.0  0.1   0:25.68 mysqld
 5249 root      15   0  1488  452  440 S  0.0  0.0   0:00.00 logger
 9862 root      15   0  2968 1044  968 S  0.0  0.0   0:00.48 master
 9886 postfix   15   0  3008 1128 1012 S  0.0  0.0   0:02.39 qmgr
11681 root      18   0  6552  592  588 S  0.0  0.0   0:00.00 saslauthd
11903 root      16   0  3468  688  600 S  0.0  0.0   0:00.01 sshd
15569 root      18   0 24264 2116 1988 S  0.0  0.0   0:00.77 spamd
15678 nobody    15   0  4072  580  444 S  0.0  0.0   0:00.21 proftpd
15696 daemon    16   0  1684  292  280 S  0.0  0.0   0:00.00 atd
15704 root      15   0  1764  644  576 S  0.0  0.0   0:00.88 cron
16323 root      18   0 24264  740  596 S  0.0  0.0   0:00.00 spamd
32139 root      16   0 23980 8120 5128 S  0.0  0.1   0:00.50 apache2
32151 root      16   0  3044 1364 1164 S  0.0  0.0   0:00.07 pipelog.pl
 7969 www-data  16   0 28548  10m 4156 S  0.0  0.2   0:01.90 apache2
30488 www-data  16   0 28348  11m 4216 S  0.0  0.2   0:02.24 apache2
19898 www-data  16   0 30372  12m 4592 S  0.0  0.2   0:02.20 apache2
19911 www-data  16   0 28476  11m 4224 S  0.0  0.2   0:01.23 apache2
19929 www-data  16   0 28036  10m 3400 S  0.0  0.2   0:01.74 apache2
19931 www-data  16   0 28184  10m 3480 S  0.0  0.2   0:00.89 apache2
19932 www-data  16   0 28204 9.8m 3352 S  0.0  0.2   0:00.95 apache2
 1816 www-data  16   0 28224  10m 3744 S  0.0  0.2   0:01.01 apache2
12205 www-data  16   0 29472  10m 3336 S  0.0  0.2   0:00.76 apache2
 5347 root      18   0 22284 8276 3948 S  0.0  0.1   0:16.69 asterisk
12127 www-data  16   0 28112  10m 3268 S  0.0  0.2   0:00.14 apache2
10223 postfix   16   0  2976 1092  928 S  0.0  0.0   0:00.00 pickup
 1738 root      16   0 16500 1780 1460 S  0.0  0.0   0:00.02 sshd
 5946 root      16   0  2580 1424 1128 S  0.0  0.0   0:00.01 bash
 7798 root      16   0  2064 1044  836 R  0.0  0.0   0:00.00 top[/FONT]

ein Teil meiner Apache.conf:
Code:
LockFile /var/lock/apache2/accept.lock

# PidFile: The file in which the server should record its process
# identification number when it starts.

PidFile /var/run/apache2.pid

# Timeout: The number of seconds before receives and sends time out.

Timeout 300

# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.

KeepAlive On

# MaxKeepAliveRequests: The maximum number of requests to allow
# during a persistent connection. Set to 0 to allow an unlimited amount.
# We recommend you leave this number high, for maximum performance.

MaxKeepAliveRequests 100

# KeepAliveTimeout: Number of seconds to wait for the next request from the
# same client on the same connection.

KeepAliveTimeout 15

##
## Server-Pool Size Regulation (MPM specific)
## 

# 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 prefork.c>
StartServers         3
MinSpareServers      3 
MaxSpareServers     10
MaxClients          50
MaxRequestsPerChild  0
</IfModule>

# pthread MPM
# StartServers ......... initial  number of server processes to start
# MaxClients ........... maximum  number of server processes allowed to start
# MinSpareThreads ...... minimum  number of worker threads which are kept spare
# MaxSpareThreads ...... maximum  number of worker threads which are kept spare
# ThreadsPerChild ...... constant number of worker threads in each server process
# MaxRequestsPerChild .. maximum  number of requests a server process serves
<IfModule worker.c>
StartServers         2
MaxClients         150 
MinSpareThreads     25
MaxSpareThreads     75
ThreadsPerChild     25
MaxRequestsPerChild  0
</IfModule>

# perchild MPM
# NumServers ........... constant number of server processes
# StartThreads ......... initial  number of worker threads in each server process
# MinSpareThreads ...... minimum  number of worker threads which are kept spare
# MaxSpareThreads ...... maximum  number of worker threads which are kept spare
# MaxThreadsPerChild ... maximum  number of worker threads in each server process
# MaxRequestsPerChild .. maximum  number of connections per server process (then it dies)
<IfModule perchild.c>
NumServers           3
StartThreads         3
MinSpareThreads      3
MaxSpareThreads     10
MaxThreadsPerChild  20
MaxRequestsPerChild  0
AcceptMutex fcntl
</IfModule>

und folgende Einstellungen hab ich für meine Groupware machen müssen:
Code:
memory_limit=32MB

With synchronization for example the processing of inserting a lot of contacts can take some time. It's therefore recommended to allow a script five minutes of execution time.
max_execution_time=300

To be able to upload files the following values must be set. Note: you must set the 'memory_limit' value twice as high as the 'upload_max_filesize'.
file_uploads=On
upload_max_filesize=10MB

Edit the following values in apache's httpd.conf (Sometimes apache.conf)
KeepAlive=On
KeepAliveTimeout=120

Hat einer von euch einen Tipp was ich verbessern kann um nicht so nah am Memorylimit zu sein? Mir wurde von meinem Anbieter geraten dass ich meine Asterisk Configs sehr gut gemacht haben muss damit das nicht zum Ballast wird, wären dort zu sehen: http://www.ip-phone-forum.de/showthread.php?t=129366

Danke schon mal im voraus

Nimrod
 
Deine Anfrage ist schon länger her - trotzdem:
Der Arbeitsspeicher von Linux ist immer voll - Linux nutzt den Speicher, den er nicht braucht, zum Filecaching. Ein sehr gutes tool, um das zu sehen, ist das Programm htop.

Man sagte früher, Linux barucht 2*RAM Swapspace. Meiner Meinung nach ist das vorbei - wenn Linux anfängt zu swappen, kannst Du die Performance vergessen, besonders wenn Datenbanken im Spiel sind. Deine Ausgabe von top zeigt eigentlich, dass nur sehr wenig geswapt wird. Insofern scheint die Maschine mit dem Speicher zufrieden zu sein. Mit einem tool wie dstat kannst Du beobachten, ob die Maschine sich mit I/O Vorgängen selbst blockiert - dann gönn ihr einfach mehr Speicher.
 
Holen Sie sich 3CX - völlig kostenlos!
Verbinden Sie Ihr Team und Ihre Kunden Telefonie Livechat Videokonferenzen

Gehostet oder selbst-verwaltet. Für bis zu 10 Nutzer dauerhaft kostenlos. Keine Kreditkartendetails erforderlich. Ohne Risiko testen.

3CX
Für diese E-Mail-Adresse besteht bereits ein 3CX-Konto. Sie werden zum Kundenportal weitergeleitet, wo Sie sich anmelden oder Ihr Passwort zurücksetzen können, falls Sie dieses vergessen haben.