Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Demon uruchamia tylko jednego workera i kończy działanie, Kohana
sabat24
post
Post #1





Grupa: Zarejestrowani
Postów: 175
Pomógł: 26
Dołączył: 13.09.2007
Skąd: Gdańsk

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


Opierając się na tym kodzie: https://code.google.com/archive/p/kohanaqueue/ chciałem stworzyć demona pod Kohaną. Jest on uruchamiany w środowisku CLI przy pomocy Miniona (moduł Kohany do pracy z poziomu CLI).
Demona uruchamiam przy pomocy popen
  1. pclose(popen('/usr/bin/php ' . DOCROOT . 'index.php daemon start &', 'r'));


Powoduje to wykonanie tego skryptu: http://paste.ofcode.org/dxCeqsCBqVTpFCM3ykx7m5

W logach można zobaczyć następujące dane:
Kod
DEBUG: Forked Once
ERROR: Parent.
DEBUG: Starting the scanning
oraz finalnie jest uruchomienie workera w linijce 84, który wykonuje swoje działanie


Nie otrzymuję sygnału SIGTERM, jednak skrypt kończy działanie na jednym razie, nie wywołując kolejnych workerów z bazy.

Dopiero zaczynam w tym temacie, ale czy winą za to może być uruchamianie skryptu przez popen zamiast bezpośrednio z konsoli? Czy też problem tkwi w samym kodzie?

EDIT
zapomniałem dodać pcntl_signal_dispatch(); do głównej pętli - teraz wygląda na działające

Ten post edytował sabat24 9.09.2016, 07:56:42
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 Aktualny czas: 21.08.2025 - 04:38