Projekt

Obecné

Profil

Chyba #760

uzavřený

Skript pro přesměrování z brány na FreenetIS vytěžuje CPU

Přidáno uživatelem Ondřej Fibich před více než 10 roky(ů). Aktualizováno před více než 10 roky(ů).

Stav:
Uzavřený
Priorita:
Vysoká
Přiřazeno:
Cílová verze:
Začátek:
2013-08-30
Uzavřít do:
% Hotovo:

0%

Odhadovaná doba:

Popis

top procesu:

 
 PID USER     PRI  NI  VIRT   RES   SHR S CPU% MEM%   TIME+  Command
 1236 root      20   0 8262M 29472  2792 R 106.  0.2 15h29:58 python /usr/sbin/freenetis-http-302-redirection.py 36000 https://*****/freenetis /dev/null

počet spuštěných procesů (1 OK):

root@igw:~# ps aux | grep -v grep | grep "/usr/sbin/freenetis-http-302-redirection.py" | wc -l
1

počet spuštěných vláken procesu (docela hodně na to, že se měření odehrává v 1 ráno):

root@igw:~# cat /proc/1236/status | grep Threads
Threads:        1020

vytížení, měření 1:

  1  [|                         1.2%]     Tasks: 1125 total, 2 running
  2  [                          0.0%]     Load average: 1.05 1.02 1.00
  3  [|                         1.3%]     Uptime: 136 days(!), 01:21:29
  4  [||||||||||||||||||||||||100.0%]
  5  [                          0.0%]
  6  [|||                       5.2%]
  7  [                          0.0%]
  8  [                          0.0%]
  Mem[|||||             1409/16057MB]
  Swp[                       0/487MB]

vytížení, měření 2:

  1  [||||||||                                                                                                7.0%]     Tasks: 1128 total, 2 running
  2  [                                                                                                        0.0%]     Load average: 1.14 1.05 1.01
  3  [||                                                                                                      1.1%]     Uptime: 136 days(!), 01:22:17
  4  [||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||||100.0%]
  5  [                                                                                                        0.0%]
  6  [||                                                                                                      0.9%]
  7  [                                                                                                        0.0%]
  8  [                                                                                                        0.0%]
  Mem[||||||||||||||||                                                                                1410/16057MB]
  Swp[                                                                                                     0/487MB]

Soubory

cpu_usage.png (19.8 KB) cpu_usage.png Problém nastal po automatické aktivaci přesměrování upozornění na placení ve 24:00 Ondřej Fibich, 2013-08-30 11:27

Aktualizováno uživatelem Ondřej Fibich před více než 10 roky(ů)

Aktualizováno uživatelem Ondřej Fibich před více než 10 roky(ů)

Dneska jsem provedl benchmark:

  • pro 500 požadavků/sekunda to vytěžuje můj PC od 20-30% CPU (core i5), což je myslím OK.
  • vlákna se správně ukončují (jinak řečeno skoro pořád je počet vláken roven jedné, i když vyřizuje velké množství požadavků)

Z toho usuzuju, že problém není v zatížení, ale v nekoreknosti chování některých klientů, které komunikují s tímto skriptem. Do skriptu jsem proto zabudoval limit, který by měl po pár sekundách ukončit připojení, po němž následuje ukončení samotného vlákna.

Změna ve skriptu by měla tedy zamezit hromadění neukončených vláken při nekorektním chování klienta.

Pokud se toho podaří docílit a zatížení bude přetrvávat, budeme to řešit dále.

Aktualizováno uživatelem Ondřej Fibich před více než 10 roky(ů)

U nás se drží počet vláken na 1, takže oprava nejspíš ošetřila i přetížení CPU.

Aktualizováno uživatelem Ondřej Fibich před více než 10 roky(ů)

  • Stav změněn z Nový na Uzavřený
  • Přiřazeno nastaven na Ondřej Fibich

Dávám zatím jako uzavřený, když tak znovu otevřít.

Aktualizováno uživatelem Pavel Kocourek před více než 10 roky(ů)

stále špatné ....nahodile se to chová blbě...nelze to spojit s žádnou událostí, která by to navodila :(

http://imageshack.us/f/541/15jh.jpg/

Aktualizováno uživatelem Ondřej Fibich před více než 10 roky(ů)

Pavel Kocourek napsal:

stále špatné ....nahodile se to chová blbě...nelze to spojit s žádnou událostí, která by to navodila :(

http://imageshack.us/f/541/15jh.jpg/

Ahoj, ten proces má uptime 23h a cosi, jen pro ověření: bylo po updatu přesměrování restartované?
Pokud to nastane znovu, přikládej prosím vždy i výpis přikazu: cat /proc/<PID freenetis-http-302-redirection.py procesu>/status | grep Threads

Také k dispozici: Atom PDF