Gearman yönetimine ulaşmak için herhangi bir şekilde?

5 Cevap php

Ben belirlemek için bir Gearman sunucusunu sorgulamak için muktedir istiyorum kaç örneği (temelde ben emin olmak istiyorum çalışan var bir işçinin RunTaskA mevcuttur ve RunTaskB varsa orada bu görevleri ele hiçbir işçi, ben bir uyarı göndermek edebilmek istiyoruz.

Bunu yapmak için herhangi bir yolu var mı?

Ayrıca: Gearman sunucusunu sorgulamak için bir PHP yol biliyor Mad sahne eğer.

Edit: Ben doğal olarak mevcuttur PHP Gearman uzantısı hakkında biliyorum, ama ben bir görev teslim uzantısı arıyor değilim, bana Gearman sunucuyu sorgulamak ve kaç işçi hizmet görmek için izin verir bir şey gerekir Belirli görev.

5 Cevap

Hızlı kontrol için, ben bu bash tek-liner kullanın:

# (echo status ; sleep 0.1) | netcat 127.0.0.1 4730

Bu localhost üzerinde çalışan bir Gearman örneği için bir bağlantı açar ve "statü" sorgusu gönderir. Bu da örnek işlerin adını ve numarasını içerir. Bilgiler daha sonra raporlama ve uyarı için grep / awk / wc vb ile işlenebilir.

Ben de tüm bağlı işçileri gösteriyor "işçiler" sorgusu ile aynı şeyi.

# (echo workers ; sleep 0.1) | netcat 127.0.0.1 4730

Uyku cevap için yeterince açık bağlantıyı tutmaktır.

Tam yönetimsel komutlar listesi ve ne çıkış anlamına gelir http://gearman.org/index.php?id=protocol Sadece "İdari Protokolü" için arama altındadır

Netcat oturup beri, d5ve cevabı genişletmek ve soket beklemek, çalıştırmak saniye maksimum sayıda bir-w parametresini ekleyebilirsiniz. Yani localhost sorgulama eğer:

# (echo status ; sleep 0.1) | netcat 127.0.0.1 4730 -w 1

... Aksi takdirde geri komut istemine asla.

Bildiğim kadarıyla ben Gearman böyle bir uzantısı var bildiğiniz gibi, yönetme ve izleme işçi komut bu amaç için bunlardan birini deneyebilirsiniz sizin sorumluluğunuzdadır -

Supervisord arka planda uygulama çalıştıran ve onları izleme için bir python appliation olduğunu.

OR brian moon'un gearman manager kullanabilirsiniz

Gearman has a php extension. Henüz o içine baktınız mı?

PHP Link

Bugün üzerinde tökezledi, kendim test ama umut verici görünüyor değil.

https://github.com/yugene/Gearman-Monitor