Il mio server dev è Debian Squeeze e sto correndo Gearman 1.1.5, che ho compilato dai sorgenti con il php PECL estensione v1.1.1Gearman mi dà GEARMAN_COULD_NOT_CONNECT, è sicuramente in esecuzione
Se corro il reverse_client .php script Ottengo l'errore GEARMAN_COULD_NOT_CONNECT.
PHP Warning: GearmanClient::do(): send_packet(GEARMAN_COULD_NOT_CONNECT) Failed to send server-options packet -> libgearman/connection.cc:430 in /home/bealers/build/gearman-1.1.1/examples/reverse_client.php on line 26
ci sono un paio di messaggi simili su qui su questo e tutti rimandano a GM non è in esecuzione.
È sicuramente in esecuzione.
Sto iniziando con questi params:
PARAMS="--queue-type=MySQL --mysql-db=test_db --mysql-user=gearman --mysql-password=gearman"
Se io eliminare la tabella gearman_queue in TEST_DB poi riavviare il demone della tabella viene ricreata, quindi la sua connessione MySQL sta bene e sta chiaramente iniziando.
Posso anche telnet su 4730 su localhost, quindi non c'è alcun problema con il firewall.
Inizialmente GM aveva problemi a partire, perché stava cominciando prima di mysql, quindi ho modificato lo script di init
### BEGIN INIT INFO
# Provides: gearman-job-server
# Required-Start: $network $remote_fs $syslog mysql
e un update-rd.c gearman-job-server defaults
set per avviare dopo e inizia bene al boot up ora.
L'unica altra cosa che posso pensare è che inizialmente avevo installato via apt ma la versione era vecchia quindi l'ho rimossa e compilata dal sorgente./usr/sbin/gearmand non esiste più l'unica versione è/usr/local/sbin/gearmand
ps ax | grep gearman
mostra solo un processo in esecuzione.
Netstat mostra solo un processo running`
tcp 0 0 *:4730 *:* LISTEN 2325/gearmand
Il lib PECL sembra che vada bene:
php -i | grep gearman
/etc/php5/cli/conf.d/gearman.ini,
gearman
gearman support => enabled
libgearman version => 1.1.5
Sono fuori di idee
Ho anche provato i pacchetti veramente vecchi e alla fine ho finito per rimuoverli, costruendo GM 1.1.5 a mano e poi costruendo l'estensione PECL. – Eno