Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][Apache][AJAX] Użycie CPU
Forum PHP.pl > Forum > Przedszkole
astronomus
Witam. Nie wiedziałem gdzie najlepiej dopasować ten temat, więc wrzuciłem go do tego ogólnego działu.

A więc mam serwer dedykowany, na nim ręcznie postawione apache + mysql + php i zainstalowany system CMS WordPress.

Parametry serwera:
- Łącze 1Gbit
- Intel Core i5-2300 CPU @ 2.80GHz
- 16GB RAM
- System Windows Server 2008 R2

Myślałem, że na takiej osobnej maszynie nie będę musiał się martwić że coś będzie wolno działać.

I tu się rodzi pytanie o zużycie CPU przez PHP.

Robiąc cokolwiek na stronie, np. wędrując po panelu wordpressa (wiadomo że wtedy wykonują się różne funkcje, zapytania do bazy itp) CPU z 0% skacze do 5-10%. Serwis jest nowy, jestem jedyną osobą on-line. Dla testu postawiłem szybko plugin w wordpressie, w nim Ajax który wykonuje zapytanie PHP co 3 sekundy (funkcja wyświetlająca napis Hello World, nic wielkiego). Coś banalnego, a jednak zużycie CPU tak samo 5-10%. No to otworzyłem tego ajaxa w kilkunastu kartach na moim PC, no i zużycie procesora na dedyku wyniosło aż 50%.


I tu rodzi się wątpliwość. Jakim cudem ja jedyny wykorzystałem tak mocny procesor w połowie? Co będzie gdy na stronie będzie wielu użytkowników korzystających z panelu wordpressa, ajaxa itp? Czy po 2-3 userach serwer mi nie padnie o.O ?
Wydawało mi się że samemu nie zużyję nawet 1% mocy. A może to normalne że httpd.exe wykorzystuje swoją moc, ale przy 1, 5, 500 użytkownikach będzie jednak podobne zużycie? A może jednak coś spieprzyłem w instalacji apache, mysql itp?

Proszę o wyjaśnienie tej kwestii. Pozdrawiam
lobopol
Ja widzę 2 opcje:
-beznadziejnie skonfigurowany serwer
-nieoptymalne skrypty

z takimi informacjami mogę udzielić tylko takiej odpowiedzi
ps. na serwer php znacznie lepszy jest linux
astronomus
Co masz na myśli mówiąc beznadziejnie? Co mogłem zrobić źle? Ustawienia mysql, apache itp są standardowe po instalacji.

To error log:

Cytat
[Fri May 24 19:21:44 2013] [notice] Apache/2.2.22 (Win32) PHP/5.4.15 configured -- resuming normal operations
[Fri May 24 19:21:44 2013] [notice] Server built: Jan 28 2012 11:16:39
[Fri May 24 19:21:44 2013] [notice] Parent: Created child process 3084
httpd.exe: Could not reliably determine the server's fully qualified domain name, using (tutaj ip) for ServerName
httpd.exe: Could not reliably determine the server's fully qualified domain name, using (tutaj ip) for ServerName
[Fri May 24 19:21:44 2013] [notice] Child 3084: Child process is running
[Fri May 24 19:21:45 2013] [notice] Child 3084: Acquired the start mutex.
[Fri May 24 19:21:45 2013] [notice] Child 3084: Starting 64 worker threads.
[Fri May 24 19:21:46 2013] [notice] Child 3084: Starting thread to listen on port 80.



Coś z tego mogło wpłynąć na takie działanie?

Access log też jest zapisywany, ale w nim nie ma nic szczególnego.
Crozin
Cytat
I tu rodzi się wątpliwość. Jakim cudem ja jedyny wykorzystałem tak mocny procesor w połowie? Co będzie gdy na stronie będzie wielu użytkowników korzystających z panelu wordpressa, ajaxa itp? Czy po 2-3 userach serwer mi nie padnie o.O ?
Jeżeli masz zainstalowanego Apache'a, to będziesz miał również zainstalowanego Apache Benchmarka. Przy jego pomocy możesz bardzo łatwo sprawdzić jak mniej-więcej będzie zachowywał się serwer przy przykładowo 40 użytkownikach online.

Dopiero gdy wyniki tego testu będą niepokojące będzie sens brać się za poprawę konfiguracji.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.