ISPConfig3 na Raspberry Pi 5: Instalacja i Konfiguracja Panelu Hostingowego cz. 4

Cytat z gielo data 2024-10-19, 10:38ISPConfig3 jest panelem hostingowym służącym do zarządzania serwerami poprzez przeglądarkę internetową...
Cały artykuł jest dostępny na blogu : Konfiguracja Ispconfig3
ISPConfig3 jest panelem hostingowym służącym do zarządzania serwerami poprzez przeglądarkę internetową...
Cały artykuł jest dostępny na blogu : Konfiguracja Ispconfig3

Cytat z krystian23 data 2024-10-20, 11:20Witam
Utknąłem przy konfiguracji konta dla swojej witryny internetowej w Panelu Ispconfig 3.
Nie wiem czy ma to jakieś znaczenie ale podaje parametry swojego serwera:
Jest to vps
2xcpu
4GB Ram
40DB dysk ssd
sieć 100mbit
Chodzi mi dokładnie o konfigurację PHP-FPM Process Manager w zakładce Opcje
Standardowo jest Ondemand - tak zostawić czy lepiej zmienić na jakąś inną opcję ? czy wpisane tam standardowo parametry są odpowiednie ? czy lepiej je jakoś zmodyfikować ?
Po za tym świetny materiał odnośnie własnego serwera internetowego, Pozdrawiam.
Witam
Utknąłem przy konfiguracji konta dla swojej witryny internetowej w Panelu Ispconfig 3.
Nie wiem czy ma to jakieś znaczenie ale podaje parametry swojego serwera:
Jest to vps
2xcpu
4GB Ram
40DB dysk ssd
sieć 100mbit
Chodzi mi dokładnie o konfigurację PHP-FPM Process Manager w zakładce Opcje
Standardowo jest Ondemand - tak zostawić czy lepiej zmienić na jakąś inną opcję ? czy wpisane tam standardowo parametry są odpowiednie ? czy lepiej je jakoś zmodyfikować ?
Po za tym świetny materiał odnośnie własnego serwera internetowego, Pozdrawiam.

Cytat z gielo data 2024-10-20, 13:05Dziękuję za miłe słowa 🙂
Odnośnie twojego pytania to:
Wszystko zeleży jakie strony hostujesz, ile tych stron oraz jaki masz ruch na tych stronach. Innym czynnikiem również ważnym jest to, czy serwer stoi za jakimś proxy ? np. serwerem cdn.
Po kolei
Ondemand - Uruchamia procesy na żądanie. Z tego powodu sprawdzi się na maszynach gdzie hostujesz kilka/kilkanaście stron z bardzo dużym ruchem o różnym natężeniu w różnych porach dnia/miesiąca/roku, gdzie wąskim gardłem jest ilość pamięci RAM. Oszczędza RAM.
Static - Uruchamia wszystkie zdefiniowane procesy wraz ze startem serwera. przez co strona otwiera się trochę szybciej, gdyż serwer nie traci czasu na otwieranie potrzebnych procesów php-fpm i ich zamykanie. Ta opcja sprawdzi się wszędzie tam, gdzie na serwerze działa jedna, maksymalnie dwie strony o w miarę stałym natężeniu ruchu (np. jakaś strona b2b, panel hostingowy itp), gdzie wąskim gardłem jest obciążenie cpu. W innym przypadku będzie ciężko zapanować nad optymalnym i bezproblemowym działaniem stron.
Dynamic - Z tej opcji powinieneś korzystać prawie zawsze. Jest to coś pośredniego między ondemand a static, gdyż pozwala na stałe otwarcie podstawowej ilości procesów php-fpm, po których przekroczeniu będą się one otwierały już dynamicznie, w miarę jak będą wymagane. Opcja zalecana gdy na serwerze działa wiele różnych stron, o różnym natężeniu ruchu, także gdy mają one różnych właścicieli.
Parametry będziesz musiał dostosować do własnego serwera i stron. Podam przykład dla ostatniej opcji Dynamic.
PHP-FPM Process Manager: Dynamic
PHP-FPM pm.max_children: 50
PHP-FPM pm.start_servers: 5
PHP-FPM pm.min_spare_servers: 2
PHP-FPM pm.max_spare_servers: 5
PHP-FPM pm.max_requests: 2000
- PHP-FPM Process Manager: Dynamic
Umożliwia dynamiczne zarządzanie procesami. PHP-FPM automatycznie dostosowuje liczbę procesów roboczych w zależności od obciążenia. To oznacza, że w zależności od liczby żądań, PHP-FPM może zwiększać lub zmniejszać liczbę aktywnych procesów.- PHP-FPM pm.max_children
To maksymalna liczba procesów PHP-FPM, które mogą działać jednocześnie. Jeśli liczba żądań przekroczy tę wartość, nowe żądania będą musiały czekać, aż jeden z istniejących procesów zakończy pracę.- PHP-FPM pm.start_servers
Określa liczbę procesów roboczych, które powinny być uruchamiane przy starcie PHP-FPM. Dobrze jest ustawić tę wartość na podstawie przewidywanego obciążenia serwera. Proponuję ją ustawić na średnią ilość osób jaka odwiedza naszą stronę w ciągu 1 minuty- PHP-FPM pm.min_spare_servers
To minimalna liczba "wolnych" procesów roboczych, które PHP-FPM powinien utrzymywać w gotowości. Jeśli liczba wolnych procesów spadnie poniżej tej wartości, PHP-FPM utworzy nowe procesy, aby zwiększyć ich liczbę.- PHP-FPM pm.max_spare_servers
Określa maksymalną liczbę "wolnych" procesów roboczych. Jeśli liczba wolnych procesów przekroczy tę wartość, PHP-FPM zacznie kończyć nadmiarowe procesy, aby zaoszczędzić zasoby.- PHP-FPM pm.max_requests
Ustala maksymalną liczbę żądań, które każdy proces PHP-FPM może obsłużyć, zanim zostanie zakończony i ponownie uruchomiony. Jest to przydatne w kontekście zarządzania pamięcią, ponieważ może pomóc w zapobieganiu wyciekom pamięci.Jeśli wszystkie strony na serwerze działają za serwerem proxy np. Cloudflare, można się pokusić o ustawienie opcji Static jako że cała komunikacja odbywa się pomiędzy serwerem, a proxy i cały ruch jest łatwiejszy doi przewidzenia. To jest jednak do przetestowania. Osobiście jednak i takiej zostałbym przy opcji Dynamic z odpowiednio wysoką ilością procesów startowych, która nie za wiele zmienia w takiej konfiguracji w stosunku do Static.
Dziękuję za miłe słowa 🙂
Odnośnie twojego pytania to:
Wszystko zeleży jakie strony hostujesz, ile tych stron oraz jaki masz ruch na tych stronach. Innym czynnikiem również ważnym jest to, czy serwer stoi za jakimś proxy ? np. serwerem cdn.
Po kolei
Ondemand - Uruchamia procesy na żądanie. Z tego powodu sprawdzi się na maszynach gdzie hostujesz kilka/kilkanaście stron z bardzo dużym ruchem o różnym natężeniu w różnych porach dnia/miesiąca/roku, gdzie wąskim gardłem jest ilość pamięci RAM. Oszczędza RAM.
Static - Uruchamia wszystkie zdefiniowane procesy wraz ze startem serwera. przez co strona otwiera się trochę szybciej, gdyż serwer nie traci czasu na otwieranie potrzebnych procesów php-fpm i ich zamykanie. Ta opcja sprawdzi się wszędzie tam, gdzie na serwerze działa jedna, maksymalnie dwie strony o w miarę stałym natężeniu ruchu (np. jakaś strona b2b, panel hostingowy itp), gdzie wąskim gardłem jest obciążenie cpu. W innym przypadku będzie ciężko zapanować nad optymalnym i bezproblemowym działaniem stron.
Dynamic - Z tej opcji powinieneś korzystać prawie zawsze. Jest to coś pośredniego między ondemand a static, gdyż pozwala na stałe otwarcie podstawowej ilości procesów php-fpm, po których przekroczeniu będą się one otwierały już dynamicznie, w miarę jak będą wymagane. Opcja zalecana gdy na serwerze działa wiele różnych stron, o różnym natężeniu ruchu, także gdy mają one różnych właścicieli.
Parametry będziesz musiał dostosować do własnego serwera i stron. Podam przykład dla ostatniej opcji Dynamic.
PHP-FPM Process Manager: Dynamic
PHP-FPM pm.max_children: 50
PHP-FPM pm.start_servers: 5
PHP-FPM pm.min_spare_servers: 2
PHP-FPM pm.max_spare_servers: 5
PHP-FPM pm.max_requests: 2000
- PHP-FPM Process Manager: Dynamic
Umożliwia dynamiczne zarządzanie procesami. PHP-FPM automatycznie dostosowuje liczbę procesów roboczych w zależności od obciążenia. To oznacza, że w zależności od liczby żądań, PHP-FPM może zwiększać lub zmniejszać liczbę aktywnych procesów. - PHP-FPM pm.max_children
To maksymalna liczba procesów PHP-FPM, które mogą działać jednocześnie. Jeśli liczba żądań przekroczy tę wartość, nowe żądania będą musiały czekać, aż jeden z istniejących procesów zakończy pracę. - PHP-FPM pm.start_servers
Określa liczbę procesów roboczych, które powinny być uruchamiane przy starcie PHP-FPM. Dobrze jest ustawić tę wartość na podstawie przewidywanego obciążenia serwera. Proponuję ją ustawić na średnią ilość osób jaka odwiedza naszą stronę w ciągu 1 minuty - PHP-FPM pm.min_spare_servers
To minimalna liczba "wolnych" procesów roboczych, które PHP-FPM powinien utrzymywać w gotowości. Jeśli liczba wolnych procesów spadnie poniżej tej wartości, PHP-FPM utworzy nowe procesy, aby zwiększyć ich liczbę. - PHP-FPM pm.max_spare_servers
Określa maksymalną liczbę "wolnych" procesów roboczych. Jeśli liczba wolnych procesów przekroczy tę wartość, PHP-FPM zacznie kończyć nadmiarowe procesy, aby zaoszczędzić zasoby. - PHP-FPM pm.max_requests
Ustala maksymalną liczbę żądań, które każdy proces PHP-FPM może obsłużyć, zanim zostanie zakończony i ponownie uruchomiony. Jest to przydatne w kontekście zarządzania pamięcią, ponieważ może pomóc w zapobieganiu wyciekom pamięci.
Jeśli wszystkie strony na serwerze działają za serwerem proxy np. Cloudflare, można się pokusić o ustawienie opcji Static jako że cała komunikacja odbywa się pomiędzy serwerem, a proxy i cały ruch jest łatwiejszy doi przewidzenia. To jest jednak do przetestowania. Osobiście jednak i takiej zostałbym przy opcji Dynamic z odpowiednio wysoką ilością procesów startowych, która nie za wiele zmienia w takiej konfiguracji w stosunku do Static.

Cytat z krystian23 data 2024-10-20, 14:33u mnie średnia ilość osób w ciągu minuty (z czego większość to boty pewnie) wynosi około 15-20. Serwer stoi za cloudflare (plan free bez żadnych płatnych dodatkowych opcji). Serwer stawiałem według samouczka na blogu. Jedyną róznicą jest serwer nginx, nie apache.
Jeśli ustawię parametry jak poniżej, będzie ok ?
PHP-FPM Process Manager: Dynamic
PHP-FPM pm.max_children: 50
PHP-FPM pm.start_servers: 15
PHP-FPM pm.min_spare_servers: 5
PHP-FPM pm.max_spare_servers: 15
PHP-FPM pm.max_requests: 2000
u mnie średnia ilość osób w ciągu minuty (z czego większość to boty pewnie) wynosi około 15-20. Serwer stoi za cloudflare (plan free bez żadnych płatnych dodatkowych opcji). Serwer stawiałem według samouczka na blogu. Jedyną róznicą jest serwer nginx, nie apache.
Jeśli ustawię parametry jak poniżej, będzie ok ?
PHP-FPM Process Manager: Dynamic
PHP-FPM pm.max_children: 50
PHP-FPM pm.start_servers: 15
PHP-FPM pm.min_spare_servers: 5
PHP-FPM pm.max_spare_servers: 15
PHP-FPM pm.max_requests: 2000

Cytat z gielo data 2024-10-20, 15:47Może być jako konfiguracja wyjściowa. Obserwuj jak zachowuje się serwer i w razie potrzeby koryguj parametry w górę lub w dół aż osiągniesz zadowalający efekt. Zwróć tylko uwagę na to, że w niektórych okresach ruch może wzrosnąć nawet kilkukrotnie np. w święta. Warto wziąć to pod uwagę i nie żyłować za mocno tych ustawień.
Może być jako konfiguracja wyjściowa. Obserwuj jak zachowuje się serwer i w razie potrzeby koryguj parametry w górę lub w dół aż osiągniesz zadowalający efekt. Zwróć tylko uwagę na to, że w niektórych okresach ruch może wzrosnąć nawet kilkukrotnie np. w święta. Warto wziąć to pod uwagę i nie żyłować za mocno tych ustawień.

Cytat z krystian23 data 2024-10-21, 05:51a czy jak ustawię Dynamic dla jednej strony internetowej, a Ondemand dla innej, to nie będzie z tym żadnych problemów ?
a czy jak ustawię Dynamic dla jednej strony internetowej, a Ondemand dla innej, to nie będzie z tym żadnych problemów ?
