Apache2 + php-mpm

O ile przez lata przyzwyczaiłem się do tego jak tunningować apache2 pod kątem obsługi dużej ilości połączeń, to sprawa używania php-mpm pool’a, który właśnie dał mi dość ostro popalić… a właściwie to on od 3-4 miesięcy daje mi popalić a nie synology reverse proxy czy wydajność apache2. Sama zmiana konfiguracji serwera www nie wystarczała skoro uchem igielnym był domyślny konfig pooli php-mph. Po podciągnięciu podstawowych parametrów o jakieś 500% wszystko na razie wygląda dobrze 🙂

 

Gateway Timeout na gg@H nci

Eh, nigdy nie ma tak żeby wszystko po prostu działało, bo zawsze jakieś gówno się pojawi.

Znowu mam powrót do problemów z komunikacją pomiędzy nginx (reverse proxy) a serwerem apache2 na projekcie NCI… najprawdopodniej ten drugi znowu szwankuje…

GG@h CPU

Po rozmowach z kolegą rysiem odpaliłem na czysto GoofyxGrid@home NCI celem wrzucenia do projektu jego aplikacji.  Najprawdopodobniej projekt z apką ruszy początkiem przyszłego tygodnia z próbną seria zadań do wykonania.

Kosmetyki strony c.d.

  1. server_status.php <- pokazuje także ile zapasowych zadań jest u mnie na serwerze domowym (tu oczywiście pracuje u mnie w tle skrypt zliczający)
  2. index.php <- zaktualizowałem wreszcie  sekcje informacyjną o projekcie

Dalszy tunning

Wraz ze wzrostem ilości podłączonych hostów miałem coraz większy problem z błędami „gateway time out”,  który zwalałem na serwer synology… bo to on służy mi jako reverse proxy i przekierowuje połączenia na serwer boinca.

Niestety przez moje zaślepienie straciłem ponad miesiąc bo zamiast zmienić perspektywę na błąd cały czas szukałem problemy na moim NAS’ie. Rozwiązanie było bardzo proste, a wręcz żenujące… po postawieniu projektu na nowym komputerze nie sprawdziłem standardowej konfiguracji Apache2 (a zawsze jest to jeden z pierwszych kroków jakie robię na nowym linux’ie)… i tak o to wystarczyło ustawić moje standardowe i sprawdzone w boju ustawienia serwera WWW:

 StartServers 15
 MinSpareThreads 50
 MaxSpareThreads 100
 ThreadLimit 64
 ThreadsPerChild 50
 MaxRequestWorkers 8192
 MaxConnectionsPerChild 10000

Zapewne można by coś jeszcze lepiej zrobić, ale taka konfiguracja radzi sobie z podłączami hostami na poziomie 250,000 <- a co dopiero przy moich 7,500-8,000