Bir node.js hizmeti çalıştırıyorum (
statsd) CentOS 6'da. Böyle bir hizmeti sunmanın ve başlatabilmenin doğru yolu nedir?
Potansiyel Daemonizers - dil özel veya genel olması gereken desemonizer nedir ?:
Servis başlatıcılar - bunlar sistemden / dağıtımdan mı yoksa monit gibi izleme araçlarından mı olmalı?
Ne yazık ki bu konuda yeni bir şeyim - bunu yapmanın en standart, klasik ve güvenilir yolu neredeyim?
Uygulamanın kendisi kendini nasıl ciddiye almayı biliyorsa ...
Uygulamanız bir daemon olarak çalıştırılacaksa, evet, kendini nasıl düzenleyeceğinin, uygun dosyaların (mantık ve PID yayınının aklına) nasıl yazılacağını ve sinyalin nasıl işleneceğini tam olarak bilmelidir. Bu durumda büyük WTF.
Uygulamanızın gerçekte cüzzamlı olması istenmiyorsa veya asıl amaç bu değilse, o zaman kararınız tamamen size aittir. Başkaları için kolaylaştırmak istiyorsanız, muhtemelen ekleyebilirsiniz. Hayatı kendiniz daha da kolaylaştırmak istiyorsanız, muhtemelen onu dışarıda bırakacaksınız. İnsanlar genellikle iki yönlü bir "WTF" cevabına sahip değildir.
Servis başlatıcılar ...
Her distro paket / liman sistemi olmalı Kendi özel ihtiyaçlarını karşılamak için genel start / stop komut dosyalarınızı değiştirmekten sorumludur. Bu şeyler genellikle roket bilimi değildir, ama şüphe duyduğunuzda üzerinde çalıştığınız distro için bakıcılar ile iletişime geçin.
İzleme araçları ..
Distro'nun resmi başlatma / durdurma mekanizmalarıyla nasıl etkileşimde bulunacağını bilmeli ve programınızla özellikle nasıl etkileşimde bulunacağını bilmemeli (programınız bir SNMP hizmeti veya benzerleri için kancalar da dahil olmak üzere bir raporlama mekanizması aracılığıyla verileri "yayınlamadığı sürece"; Bu gerçekten programınızın ne yaptığına bağlıdır.