Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Równoległe procesy w CLI
athabus
post 3.12.2015, 10:40:50
Post #1





Grupa: Zarejestrowani
Postów: 898
Pomógł: 48
Dołączył: 2.11.2005
Skąd: Poznań

Ostrzeżenie: (0%)
-----


Hej,

w nawiązaniu do mojego poprzedniego wątku o przetwarzaniu równoległych procesów PHP chciałbym zapytać, jak to wygląda od strony praktycznej z przydziałem zasobów na hostingach.


W skrócie mam skrypt CLI, który tworzy procesy wywołujące zadania administracyjne (przetwarzanie danych). W celu optymalizacji chcę dany proces wywoływać wielokrotnie asynchronicznie -> czyli 1 proces wywołany Cronem tworzy np. 15 procesów w tle działających równolegle i przetwarzających fragment danych.


I tu pytanie:
- czy na hostingach ilość procesów cli jest jakoś ograniczona per konto? W apachu zdaje się można ustalić ile procesów równolegle może być odpalonych, ale jak to wygląda ze skryptami CLI, które są wywoływane z pominięciem Apache?
- jeśli takie procesy są ilościowo ograniczone, to na ile zazwyczaj takich procesów mogę liczyć na hostingu shared ?
- co się dzieje z procesem, gdy odpalam więcej niż mogę? Czeka on na wykonanie poprzednich procesów, czy po prostu się nie odpala i "przepada w otchłani"
Go to the top of the page
+Quote Post
darko
post 17.12.2015, 16:25:35
Post #2





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


W opisanym przez Ciebie przypadku proces utworzy sobie kilka lub kilkanaście wątków i będzie współdzielił zasoby w swoim obrębie dopóki wątki nie zużyją całej dostępnej pamięci lub zakończą swoje zadanie. Tutaj ogranicza Cię ustawienie memory_limit dla CLI lub ustawienia workerów. Natomiast algorytm szeregowania procesów w przypadku próby zaalokowania więcej zasobów wywłaszczy taki proces, umożliwiając pracę kolejnym. Ogólnie, oprócz ustawienia max zużycia pamięci liczy się tutaj czas zużycia procesora. Różne shared hostingi różnie to obsługują, ale chyba wszystkie ubijają ostatecznie takie procesy, umożliwiając dalszą pracę systemu operacyjnego. Natomiast jeśli rozmawiamy o max ilości procesów dla php (nie dla CLI) to też różne są limity, od 10 do 20-25 jednocześnie. Zależy ile maszyna udźwignie i na ile finezja administratora pozwoli. Fajny wykład:
http://edu.pjwstk.edu.pl/wyklady/sop/scb/wyklad4/wyklad.html


--------------------
Nie pomagam na pw, tylko forum.
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 30.06.2025 - 01:07