"En iyi uygulama" hakkında bir fikrim yok. En yaygın hataları biliyorum.
İlk Hata: DOS Kendiniz
Uzun süren işi işlemek için web işleyicisini kullanırsınız. Bu, uzun süren işler haline gelen isabetlerin yüzdesine, ne kadar sürdüğüne ve ne kadar sürekli trafik elde ettiğinize bağlı olarak kötü veya çok kötü olabilir.
Bu uzun süren işin tamamlanması için geçen süre içinde 1'den fazla uzun süredir devam eden iş almadığınızdan emin olmak istiyorsunuz. Kendiniz DOS yaparsanız. Ayrıca, yüzde ve zamanın tutarlı kaldığını varsayarak daha fazla trafik elde edersiniz. Trafik büyümesinde kendi kendini sınırlayan sorunlardan biri.
İkinci Hata: Web işleyicisinden yumurtlama
Uzun süre çalışan bir işlemi gerçekleştirmek için web işleyicisinden bir işlem oluşturmak zor olabilir ve sonuç olarak hataya açık olabilir.
- Ebeveynten doğru şekilde ayrılmanız gerekir, aksi takdirde web yöneticisi çocuğun tamamlanmasını bekler.
- Bir çocuğu unix'te çatalladığınızda, açık tutamaçları üst öğeden miras alır. Bunların üzerine yazılmadığı takdirde otomatik olarak kapatılacaktır. Buna veritabanı bağlantıları, dosya tanıtıcıları, diğer açık ağ bağlantıları da dahildir. Alt süreç tamamlandığında hepsi kapanır .
Seçenekler
Genellikle at(1)
webhandler'dan çatalsız temiz bir şekilde ayrılırım.
İle bir yoklama uygulaması da kullanabilirsiniz cron
.
İşlemeyi işleyen başka bir sunucu işlemiyle iletişim kurabilirsiniz. Bu haberleşme ile yapılabilir sockets
, pipes
REST http araması veya bir kuyruk mesaj yönlendirme gibi veya daha yüksek seviyeli soyutlama.