Apache +GameServer HTTP Download Hohe CPU Auslastung

Alles, was den Apache betrifft, kann hier besprochen werden.

Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby MajorPain931 » 30. November 2014 13:41

Hallo allerseits,

ich betreibe unter anderem einen relativ gut besuchten Garry'sMod-Server. Die Mod-Files liegen alle auf dem Webserver, damit die Leute sie schnell runterladen können. Allerdings sind das um die 200 kleine Dateien. Wenn 3-4 Leute gleichzeitig neu verbinden und die Dateien laden, geht die CPU-Auslastung von Apache in die Decke. Die Auslastung liegt da locker zwischen 300 und 400% also über 3-4 Cores und ich habe nur 6. Apache spawnt auch um die 7-8 Child-Prozesse. Das ist das 5x von dem, was der Gameserver selbst verbraucht.
Wie krieg ich meinen Apache getuned, dass das effizienter läuft, es sind ja schließlich "nur" Downloads? Der schluckt schon so viel, dass er die anderen Gameserver ausbremst und es zu Mikrolaggs bei den anderen Servern kommt.
Hat da jemand Empfehlungen für die apache2 Conf?

Ich nutze den typischen LAMP-Verbund auf Debian 7 und Apache2.2. An den Configs hab ich bisher nicht viel verändert. Hatte schon im Internet geschaut nach Einstellungsverbesserungen, aber wurde für meinen speziellen Fall nicht wirklich fündig...

Würde mich echt freuen, wenn mir jemand helfen könnte.

MfG MP931
Last edited by MajorPain931 on 30. November 2014 15:55, edited 1 time in total.
MajorPain931
 
Posts: 5
Joined: 30. November 2014 13:32
Operating System: Linux Mint 17

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby Nobbie » 30. November 2014 15:29

Ich kenne die Software nicht, ich müßte auch durch Google suchen, wenn ich "garrys mod server cpu usage" eingeben, kriege ich ziemlich viele Treffer, die müßtest Du mal abklappern. Vielleicht ist da etwas brauchbares bei.
Nobbie
 
Posts: 8758
Joined: 09. March 2008 13:04

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby MajorPain931 » 30. November 2014 15:52

Na ja, ist eig. auch nicht wirklich wichtig, es geht ja nicht um die hohe Auslastung von Garry's Mod (Das hält sich in Grenzen), sondern von Apache!
Kurzes Hintergrundwissen zum HTTP-Download: Garry's Mod erkennt beim Client, dass noch Mod-Dateien fehlen, die der Server voraussetzt. Diese hab ich bei Apache in einem extra Verzeichnis abgelegt, das habe ich Garry's Mod mitgeteilt. Im Grunde gibt Garry's Mod nur die Adresse zu den Dateien und der Client fängt an über HTTP die Dateien vom Webserver zu laden. Blendet GarrysMod mal komplett aus, das hat damit nichts mehr am Hut.

Stellt euch einfach vor, ich habe immer so um die 3-4 Leute, die gleichzeitig 200-300 Dateien von meinem Webserver (Apache 2.2) laden müssen. Und das resultiert in einer extremen Auslastung.
MajorPain931
 
Posts: 5
Joined: 30. November 2014 13:32
Operating System: Linux Mint 17

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby Nobbie » 30. November 2014 20:40

MajorPain931 wrote:Stellt euch einfach vor, ich habe immer so um die 3-4 Leute, die gleichzeitig 200-300 Dateien von meinem Webserver (Apache 2.2) laden müssen. Und das resultiert in einer extremen Auslastung.


Glaube ich ja auch, aber ich habe definitiv keinen Ehrgeiz, daran etwas zu ändern, ist mir zu fummelig und zu aufwendig. Ich helfe gerne bei technischen Fragen, Verständnisproblemen und Grundlagen, aber Optimierung von Servern ist im Rahmen so eines Forums "für lau" einfach nicht mehr drin. Das ist mir viel zu speziell.
Nobbie
 
Posts: 8758
Joined: 09. March 2008 13:04

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby MajorPain931 » 22. December 2014 18:36

Na ja, ich verlange von niemandem eine fertige Config, die perfekt passt.
Sieh es durchaus als technische Frage an, denn das Ganze ergibt für mich keinen Sinn. Wie kann es sein, dass ein einziger Download 40% CPU Auslastung hervorruft? Festplattenauslastung: Klar, aber CPU?
Ein einziger Downloader verbraucht mehr an CPU als ein GamingServer (Wo wirklich EINIGES berechnet werden muss), auf dem über 20 Leute spielen, das kann doch nicht sein?

Mal ein Auszug aus apache2ctl fullstatus zu einer Zeit, wo 2-3 Leute parallel geladen haben und die Gesamtauslastung von Apache ungefähr bei 150% liegt:
Code: Select all
   Server Version: Apache/2.2.22 (Debian) mod_fastcgi/mod_fastcgi-SNAP-0910052141 PHP/5.4.35-0+deb7u2 mod_scgi/1.13 mod_ssl/2.2.22 OpenSSL/1.0.1e
   Server Built: Jul 24 2014 15:34:00
     __________________________________________________________________________________________________________________________________________________________

   Current Time: Monday, 22-Dec-2014 17:25:03 UTC
   Restart Time: Monday, 22-Dec-2014 16:44:32 UTC
   Parent Server Generation: 1
   Server uptime: 40 minutes 31 seconds
   Total accesses: 3870 - Total Traffic: 91.4 MB
   CPU Usage: u569.58 s24.96 cu0 cs0 - 24.5% CPU load
   1.59 requests/sec - 38.5 kB/second - 24.2 kB/request
   4 requests currently being processed, 6 idle workers

___W__WW.W_.......................................

   Scoreboard Key:
   "_" Waiting for Connection, "S" Starting up, "R" Reading Request,
   "W" Sending Reply, "K" Keepalive (read), "D" DNS Lookup,
   "C" Closing connection, "L" Logging, "G" Gracefully finishing,
   "I" Idle cleanup of worker, "." Open slot with no current process

   Srv   PID     Acc    M CPU   SS  Req Conn Child  Slot     Client           VHost                                  Request
   0-1  22909 0/561/613 _ 92.69 1   390 0.0  15.54 15.60 85.26.231.137   xxxxxx    GET /gmod/prop_hunt/materials/models/vikinghelmet/vikinghelmet_
   1-1  22881 0/601/618 _ 94.49 1   306 0.0  19.53 19.53 78.202.72.44    xxxxxx     GET /gmod/prop_hunt/sound/taunts/props/33.mp3.bz2 HTTP/1.1
   2-1  22882 0/598/609 _ 93.36 1   506 0.0  16.85 16.95 78.202.72.44    xxxxxx     GET /gmod/prop_hunt/sound/taunts/props/32.mp3.bz2 HTTP/1.1
   3-1  22883 0/607/619 W 96.22 0   0   0.0  13.65 13.84 127.0.0.1       xxxxxx     GET /server-status HTTP/1.0
   4-1  22885 0/608/619 _ 96.15 2   310 0.0  13.82 13.87 78.202.72.44    xxxxxxx     GET /gmod/prop_hunt/sound/taunts/props/31.mp3.bz2 HTTP/1.1
   5-1  23363 0/173/182 _ 30.70 0   580 0.0  2.16  2.17  78.202.72.44    xxxxxxx    GET /gmod/prop_hunt/sound/taunts/props/34.mp3.bz2 HTTP/1.1
   6-1  23540 0/161/164 W 24.14 0   0   0.0  2.49  2.49  78.202.72.44    xxxxxxxx     GET /gmod/prop_hunt/sound/taunts/props/35.mp3.bz2 HTTP/1.1
   7-1  23541 0/131/141 W 23.21 1   0   0.0  3.08  3.44  85.26.231.137   xxxxxxxx    GET /gmod/prop_hunt/materials/models/vikinghelmet/vikinghelmet_
   8-1  -     0/0/40    . 1.30  448 0   0.0  0.00  0.05  ::1             xxxxxxx OPTIONS * HTTP/1.0
   9-1  23543 0/113/122 W 20.18 0   0   0.0  1.52  1.53  217.123.231.102 xxxxxxx     GET /gmod/prop_hunt/maps/ph_restaurant.bsp.bz2 HTTP/1.1
   10-1 23544 0/113/122 _ 18.20 2   295 0.0  1.82  1.85  78.202.72.44    xxxxxx    GET /gmod/prop_hunt/sound/taunts/props/30.wav.bz2 HTTP/1.1
MajorPain931
 
Posts: 5
Joined: 30. November 2014 13:32
Operating System: Linux Mint 17

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby Nobbie » 22. December 2014 18:52

MajorPain931 wrote:Sieh es durchaus als technische Frage an, denn das Ganze ergibt für mich keinen Sinn.


Ja, aber das ist mir ehrlich ziemlich egal, ob das für Dich einen Sinn ergibt oder nicht.

MajorPain931 wrote:Wie kann es sein, dass ein einziger Download 40% CPU Auslastung hervorruft? Festplattenauslastung: Klar, aber CPU?
Ein einziger Downloader verbraucht mehr an CPU als ein GamingServer, auf dem über 20 Leute spielen, das kann doch nicht sein?


Weiß ich nicht, kann ich nichts zu sagen, dazu müßte ich den ganzen Krempel installieren, analysieren und benchmarken. Dazu habe ich weder Zeit noch Lust.
Nobbie
 
Posts: 8758
Joined: 09. March 2008 13:04

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby MajorPain931 » 22. December 2014 19:07

Also, ich muss schon sagen, es ist schön, dass es Leute gibt, die anderen helfen (Zumindest denke ich das bei jemandem, der schon über 6000 Posts hat), aber deine Antworten finde ich ehrlich gesagt etwas unhöflich. Ich verlange von niemandem, dass er seine Zeit "für lau" für jemanden opfert und wenn niemandem spontan etwas dazu einfällt, dann ist es halt so und damit muss ich leben; Ich verdiene schließlich auch keinen Cent daran, dass ich Gameserver hoste und werde kein Geld darin investieren, dass mir jemand den Server einrichtet. Ich verlange keine professionelle Antwort, aber ich dachte, dass es zumindest irgendwelche Ansätze geben könnte.

Weiterhin bin ich auch der Meinung, dass du dich zu sehr auf den GamingServer versteifst, ich denke, dass der eher nebensächlich ist. Wenn ich eine große Datei per Browser lade, ist die Auslastung auch verhältnismäßig sehr hoch, da kann etwas mit Apache nicht stimmen.

Wenn niemandem mehr was spontan einfällt, muss ich wohl oder übel den Webserver wechseln (Last Resort).
In diesem Sinne ein frohes Fest (Das vielleicht die mürrischen Gemüter etwas aufheitert) und einen guten Rutsch.

Edit: Ich habe testweise einen neuen virtuellen Server erstellt und dort die Dateien platziert mit eigener Subdomain. Jetzt liegt die Auslastung so niedrig, dass sie nicht mal in top angezeigt wird. Scheinbar lag es an der "default"-site, vielleicht wurden alle Dateien über fastCGI geleitet? Weil die Direktive ist in default drin, beim neuen virtuellen Host allerdings nicht.
Thread kann geschlossen werden, jetzt läuft alles.
MajorPain931
 
Posts: 5
Joined: 30. November 2014 13:32
Operating System: Linux Mint 17

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby Nobbie » 23. December 2014 11:53

MajorPain931 wrote:Ich verlange von niemandem, dass er seine Zeit "für lau" für jemanden opfert und wenn niemandem spontan etwas dazu einfällt, dann ist es halt so und damit muss ich leben;


Eben. Also doch nicht unhöflich? Das ist doch genau, was ich sage, wenn ich nicht wenigstens einen handfesten Verdacht habe, dann läuft es auf Fummelei hinaus. Das ist schlicht zu viel.

MajorPain931 wrote:Weiterhin bin ich auch der Meinung, dass du dich zu sehr auf den GamingServer versteifst, ich denke, dass der eher nebensächlich ist. Wenn ich eine große Datei per Browser lade, ist die Auslastung auch verhältnismäßig sehr hoch, da kann etwas mit Apache nicht stimmen.


Weiß ich nicht (s.o.). Ich kann nur raten und dann rate ich halt und wenn es falsch ist, dann ist es falsch. Das ist eben so, wenn man raten muss. Und mehr ist definitiv nicht drin, ich werde im Leben nicht seitenweise Konfigurationsdatein abklopfen, ob da irgendetwas drin ist, was verdächtig sein könnte.

MajorPain931 wrote:Edit: Ich habe testweise einen neuen virtuellen Server erstellt und dort die Dateien platziert mit eigener Subdomain. Jetzt liegt die Auslastung so niedrig, dass sie nicht mal in top angezeigt wird. Scheinbar lag es an der "default"-site, vielleicht wurden alle Dateien über fastCGI geleitet?


Vielleicht. Ich sehe hier in keinem Beitrag irgendetwas von fastCGI, geschweige denn von default-site. Was weiß ich, was da eingestellt ist? Ich weiß nicht einmal, mit welcher URL Du arbeitest, welche Subdomain Du eingerichtet hast, was da eingerichtet ist - und vor allem weiß ich nicht, ob es etwas mit dem Problem zu tun hat. Ich habe noch nicht einmal einen Heuhaufen, wo ich nach einer Nadel suchen könnte. Verstehst es langsam, wie sinnlos das aus meiner Sicht ist?
Nobbie
 
Posts: 8758
Joined: 09. March 2008 13:04

Re: Apache +GameServer HTTP Download Hohe CPU Auslastung

Postby MajorPain931 » 23. December 2014 15:27

Na ja, im fullstatus wurden die aktivierten Module angezeigt, also stand das mit fastcgi zumindest 1x versteckt drin ^^.

Ich wusste ja auch nicht, wo ich hätte ansetzen sollen, eine kurze Frage à la "Wie hast du deinen Webserver denn im großen und Ganzen eingestellt?" hätte ja gereicht, dann hätte ich noch mal einiges an Infos gegeben. Ich wollte einen im ersten Post auch nicht gleich damit bombardieren.

Ich werde bei Gelegenheit noch mal genau herausfinden, woran es lag, die neue Seite für den Download beinhaltet nur ServerName und DocumentRoot in der Config (Reicht ja auch für den Fall).

Da es eh schon in Offtopic abdriftet, belassen wir es dabei, ich werde den Post noch mal editieren, wenn ich den Fehler habe, sollte da mal jemand mit dem gleichen Problem drauf treffen.
MajorPain931
 
Posts: 5
Joined: 30. November 2014 13:32
Operating System: Linux Mint 17


Return to Apache

Who is online

Users browsing this forum: No registered users and 6 guests