Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Witam, od niedawna rozpocząłem testy swojego portalu, lecz martwi mnie kilka faktów ze strony serwera. Korzystam z dedyka, a na nim Ubuntu Server 9.10 + Apache2 + PHP + MySQL + Webmin + kilka bibliotek niestandardowych PHPa. Oprócz tego do tej pory jedynie zmieniałem ustawienia .conf powyższych aplikacji (jeżeli można to tak nazwać) no i porty, hasła, grupy użytkowników etc. Martwi mnie natomiast kilka, faktów, a że specjalistą nie jestem zwracam się o pomoc na forum. 1. Portal w tej chwili posiada 150 userów, przy czym średnio online 10 - a zużycie CPU pokazane w Webminie szaleje - raz 0.00, a raz nawet 1.25! - czy to zużycie naprawdę może być aż tak różnorodne? Czy webmin pokazuje jakieś błędne dane? Poza tym 1.25 na dwurdzeniowym procesorze to i tak bardzo dużo, zwłaszcza że 10 userów online to nie jest ogrom obciążeń. Na stronie są stosowane różnorodne systemy cache, ograniczenia połączeń z bazą danych etc. 2. Mimo, iz serwer jest prawie "pusty", gdyż jak wymieniłem na początku dużo tego nie zmieniałem do tej pory, posiada normalnie czynnych 120-140 procesów - powinno być tak dużo czy jest z tym coś nie tak? I dlaczego ok. 20-30 tych procesów to: /usr/sbin/apache2 -k start ...różniące się czasem startu o 1 min. Czy te procesy są konieczne? Może tyle tych "apachów" powoduje takie skakanie zużycia? Byłbym wdzięczny za szybką i szczegółową odpowiedź co do moich wątpliwości. Udostępnij ten post Link to postu Udostępnij na innych stronach
Kolopik 222 Zgłoś post Napisano Styczeń 17, 2010 Jaki dokładnie procesor? Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Intel® Core2 Duo CPU E7400 @ 2.80GHz, 2 cores Udostępnij ten post Link to postu Udostępnij na innych stronach
Kolopik 222 Zgłoś post Napisano Styczeń 17, 2010 Powiem tak. Ja bym się tym nie martwił. Co innego gdyby skakało Ci od 0 do 50%/80%. Zobacz jeszcze na serwerze(w konsoli) co Ci tyle zżera. Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 No właśnie dlatego się martwię, bo z tego co mi wiadomo to Average CPU Loads to już bardzo źle przy 0.70 na rdzeń. Czyli u mnie limit jest 1.40, a osiągnęło już raz 1.25. A w jaki sposób mogę to sprawdzić w konsoli? Pytałem właśnie kilku znajomych, lecz oni nie potrafią niestety sprawdzić tego konsolą. Udostępnij ten post Link to postu Udostępnij na innych stronach
kafi 2425 Zgłoś post Napisano Styczeń 17, 2010 A w jaki sposób mogę to sprawdzić w konsoli? Pytałem właśnie kilku znajomych, lecz oni nie potrafią niestety sprawdzić tego konsolą. top / htop Udostępnij ten post Link to postu Udostępnij na innych stronach
www.ionic.pl 535 Zgłoś post Napisano Styczeń 17, 2010 Czy mi się dobrze wydaje, że masz LA 1.25 i to jest jakiś problem ? Po 1 nie wydaje mi się aby to w ogóle był jakiś znaczący load Po 2 LA nie jest wyznacznikiem obciążenia serwera i to nie jedyny czynnik na który winno się zwracać uwagę. Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Fiercio: Dzięki, napewno się przyda to co podałeś. Przyjrzę się zużyciu serwera, co go zżera, gdy znowu podskoczy. W tej chwili jedynie mogę powiedzieć, że tak jak myślałem jedyne zużycie wykazują te identyczne sobie procesy apache - każdy wykazuje inne zużycie CPU od 0% do 3% Najdmen: 1. CLA 1.25 na 2-rdzeniowym procesorze przy 10 osobach online to jest bardzo dużo 2. Wiem, że nie jedyny, ale nim się właśnie przejmuję, bo RAM ma zużycie minimalne, łącze i transfer może być, a zużycie dysków także niskie. Udostępnij ten post Link to postu Udostępnij na innych stronach
Miłosz 2311 Zgłoś post Napisano Styczeń 17, 2010 Przy loadzie 10 zacznij się martwić. Są jakieś widoczne przymulenia stron? Jakie masz iowaity? Zweryfikuj Timeout i keepalive w konfiguracji apache. Udostępnij ten post Link to postu Udostępnij na innych stronach
guziec 109 Zgłoś post Napisano Styczeń 17, 2010 Przy loadzie 10 zacznij się martwić. Są jakieś widoczne przymulenia stron? Jakie masz iowaity? Przecież ten serwer nic nie robi tylko miesza powietrze. To z czego ten 1.25 load? 10 użytkowników online to core duo nie powininen nawet zauważyć. Ja mam na słabszym procesorze obecnie: 21:15:44 up 58 days, 6:05, 1 user, load average: 0.32, 0.16, 0.10 A forów na nim jest kilka w tym jedno o wiele bardziej aktywne, nie mówiąc już o normalnych stronach. Jak najbardziej powinień się martwić - jeśli coś nie zżera pamięci, przez co serwer swapuje, to obstawiam że to jakiś problem sprzętowy. vmstat co pokazuje? Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Tak wygląda log vmstat: procs -----------memory---------- ---swap-- -----io---- -system-- ----cpu---- r b swpd free buff cache si so bi bo in cs us sy id wa 0 0 0 1583772 38292 203596 0 0 6 23 55 82 1 0 98 0 Udostępnij ten post Link to postu Udostępnij na innych stronach
www.ionic.pl 535 Zgłoś post Napisano Styczeń 17, 2010 To z czego ten 1.25 load? Moim zdaniem z konfiguracji. @UP daj jakieś httpd.conf my.cnf itd. Co Wy macie z tym loadem ludziska ? 1, 10, 20, 7, 5 czy 6 jak maszyna pracuje stabilnie i "nie zamula" to jedyne co to kole w oczy Udostępnij ten post Link to postu Udostępnij na innych stronach
Linux@User 0 Zgłoś post Napisano Styczeń 17, 2010 Co Wy macie z tym loadem ludziska ? 1, 10, 20, 7, 5 czy 6 jak maszyna pracuje stabilnie i "nie zamula" to jedyne co to kole w oczy Witam Z wielką przyjemnością poprę te słowa B) Niewykorzystane zasoby to stracone zasoby. Nie rozumiem po co strach autora tematu jeżeli load będzie powyżej 10 to pomyśl nad administratorem który skonfiguracje ci serwer "profesionalnie". Uwierz że jeśli nie mam problemów na dzień dzisiejszy i jak wyżej wspominano "nie zamula" Śpij spokojnie ! Pozdrawiam Serdecznie Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Linux@User: Rozwiązanie problemu nie polega na ucieczce od niego :> A sam też się chcę czegoś nauczyć bo jako webdeveloper (amator póki co) o serwerach też powinienem mieć choć trochę obeznania, a nie tylko jak stworzyć dobrą stronę xD A co do loga to proszę apache2.conf a httpd.conf jest obecnie pusty ^^ ServerRoot "/etc/apache2" PidFile ${APACHE_PID_FILE} Timeout 300 KeepAlive On MaxKeepAliveRequests 100 KeepAliveTimeout 15 <IfModule mpm_prefork_module> StartServers 5 MinSpareServers 5 MaxSpareServers 10 MaxClients 150 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_worker_module> StartServers 2 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxClients 150 MaxRequestsPerChild 0 </IfModule> <IfModule mpm_event_module> StartServers 2 MaxClients 150 MinSpareThreads 25 MaxSpareThreads 75 ThreadLimit 64 ThreadsPerChild 25 MaxRequestsPerChild 0 </IfModule> User ${APACHE_RUN_USER} Group ${APACHE_RUN_GROUP} AccessFileName .htaccess <Files ~ "^\.ht"> Order allow,deny Deny from all </Files> DefaultType text/plain HostnameLookups On ErrorLog /var/log/apache2/error.log LogLevel warn Include /etc/apache2/mods-enabled/*.load Include /etc/apache2/mods-enabled/*.conf Include /etc/apache2/httpd.conf Include /etc/apache2/ports.conf LogFormat "%v:%p %h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" vhost_combined LogFormat "%h %l %u %t \"%r\" %>s %O \"%{Referer}i\" \"%{User-Agent}i\"" combined LogFormat "%h %l %u %t \"%r\" %>s %O" common LogFormat "%{Referer}i -> %U" referer LogFormat "%{User-agent}i" agent CustomLog /var/log/apache2/other_vhosts_access.log vhost_combined Include /etc/apache2/conf.d/ Include /etc/apache2/sites-enabled/ UseCanonicalName Off ServerSignature Off ServerTokens Prod Udostępnij ten post Link to postu Udostępnij na innych stronach
Linux@User 0 Zgłoś post Napisano Styczeń 17, 2010 Linux@User: Rozwiązanie problemu nie polega na ucieczce od niego :> A sam też się chcę czegoś nauczyć bo jako webdeveloper (amator póki co) o serwerach też powinienem mieć choć trochę obeznania, a nie tylko jak stworzyć dobrą stronę xD A co do loga to proszę apache2.conf a httpd.conf jest obecnie pusty ^^ Witam Ach oj przepraszam myślałem że skuszę do płatnej pomocy mojej osoby Zacznijmy od początku na jakim skrypcie masz oparty portal/forum bo to może one powodują to "ogromne" obciążenie ? Pozdrawiam Serdecznie P.S Moje maszyny mają 9.34 średnio i się cieszę Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Aczkolwiek stosuję liczne cache, dobrze pogrupowane zapytanie SQL i kilka tricków zmniejszających obciążenie jak np. AJAX. Tylko że to raczej nie ma nic do tego, bo nawet jakby skrypt był ciężki (a nie powinien), to obciążenie byłoby duże non stop. A tutaj skacze jak pisałem. W tej chwili jest 12 online i CLA wynosi 0.01. Ale to mi nie gwarantuje że np. za 15 min nie skoczy znowu do 0.70 czy innej "dużej" wartości. Dodam że w ciągu ostatniej godziny nie zanotowałem większego zużycia niż 0.10. Ale po południu znowu przez ok. godzinę utrzymywało się ponad 1.00 ;-/ Udostępnij ten post Link to postu Udostępnij na innych stronach
ksk 67 Zgłoś post Napisano Styczeń 17, 2010 pokaż no jeszcze my.cnf spojrzymy na to bo możliwe że masz jakieś mega ciężkie zapytania do bazy Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 17, 2010 Z tym zapytaniem to bym raczej wątpił, gdyż zużycie skacze nawet wtedy gdy nikt nie korzysta ze stronki. [client]port = 3306 socket = /var/run/mysqld/mysqld.sock [mysqld_safe] socket = /var/run/mysqld/mysqld.sock nice = 0 [mysqld] user = mysql pid-file = /var/run/mysqld/mysqld.pid socket = /var/run/mysqld/mysqld.sock port = 3306 basedir = /usr datadir = /var/lib/mysql tmpdir = /tmp skip-external-locking bind-address = 127.0.0.1 key_buffer = 16M max_allowed_packet = 16M thread_stack = 192K thread_cache_size = 8 myisam-recover = BACKUP query_cache_limit = 1M query_cache_size = 16M expire_logs_days = 10 max_binlog_size = 100M [mysqldump] quick quote-names max_allowed_packet = 16M [isamchk] key_buffer = 16M !includedir /etc/mysql/conf.d/ Udostępnij ten post Link to postu Udostępnij na innych stronach
www.ionic.pl 535 Zgłoś post Napisano Styczeń 18, 2010 włącz slow log, i możesz jeszcze dać php.ini nam, przyciąć apache nie umisisz, daj mu jeden req i odpal sobie server-status. i wywal nice z mysql Udostępnij ten post Link to postu Udostępnij na innych stronach
Skie 0 Zgłoś post Napisano Styczeń 18, 2010 Dobrze, teraz działa już troszkę lepiej :-) Bardzo dziękuję za udzieloną pomoc :-) Udostępnij ten post Link to postu Udostępnij na innych stronach