Heroku'da bir Rails uygulaması çalıştırıyorum ve uzun süren bazı işleri gerçekleştirmek için özel bir işlem türü tanımladım, gerçekten uzun süren bir iş kolayca bir saat ya da daha fazla bir şey almak. Bazı küçük parçalara ayırmanın daha iyi olduğunu biliyorum, ancak bu görev için oldukça sorunlu. Sorun şu ki, yeni bir sürümü zorladığımda - Heroku tüm dynoları yeniden başlatıyor (web, işçiler, uzun işçiler - her şey). Sadece bazı süreç türlerini yeniden başlatmanın mümkün olduğunu merak ediyorum, ör. sadece web dynos?Bazı işlem türlerini yeniden başlatmadan bir Heroku uygulamasını yeniden yüklemek mümkün mü
1
A
cevap
1
Hayır, bu mümkün değil. Bunun en kolay ve en ölçeklenebilir yolu, uzun soluklu işlerinizi daha küçük parçalara bölmek olacaktır. Bu sayede çok küçük işlerin çok hızlı bir şekilde işlenmesini sağlayabilirsiniz. Uygulamanız yeniden başlatıldığında, uzun süren bir işi durdurmayacağından işleminizi yeniden başlatabilirsiniz.
Alternatif olarak, uygulamanız dağıtıldığında one-off dynos yeniden başlatılmayacaktır. heroku api kullanarak, programsal olarak boot one-off dynos programlayabilirsiniz. Bunu kullanarak, işlemek için ihtiyaç duyduğunuz her uzun çalışma için bir kerelik bir dyno başlatabilirsiniz.
Bu iş işlenecek (24 saat kadar, cycled nerede olacak) ve uygulamanızı yeniden başlatmadan dağıtabileceksiniz.
İlgili konular
- 1. Sunucuyu yeniden başlatmadan uygulamayı yeniden başlat?
- 2. NotificationListenerService durdurma ve yeniden başlatmadan yeniden başlatılamıyor
- 3. Bilgisayarı yeniden başlatmadan tüm CUDA işlemlerini durdurun.
- 4. CodeBlocks'ta bir dosyayı yeniden adlandırmak mümkün mü?
- 5. Sadece yeniden yönlendirici geçişi olan yeni çocuk bileşenlerini yeniden yüklemek mümkün mü
- 6. Carrierwave Yeniden Başlatmadan Sonra Sıfırla
- 7. Cassandra düğümünü yeniden başlatmadan bir sstable'ı nasıl yeniden yapabilirim?
- 8. Kilitlenme Uygulamasını Yeniden Başlat
- 9. MATLAB'ı yeniden başlatmadan model DLL'si nasıl yeniden derlenir?
- 10. svn etiketinin yeniden adlandırılması mümkün mü
- 11. Bir formu temizlemek ve bir düğme ile sayfayı sıfırlamak (yeniden yüklemek) mümkün mü?
- 12. Bir j2ee uygulamasını programla yeniden başlatır mısınız?
- 13. JVM'yi yeniden başlatmadan anahtar deposuna yeni sertifika ekleyebilir miyim?
- 14. Tarayıcıyı aynı sayfayı hash ile yeniden yüklemeye zorlamak mümkün mü?
- 15. Sunucuyu yeniden başlatmadan MySQL sorgu önbelleğini temizle
- 16. Bir AWS Lambda işlevini yeniden adlandırmak mümkün mü?
- 17. ListPreference öğelerini bir adaptörden yüklemek mümkün mü?
- 18. Bir CKEditor Combobox/Drop Down Menüsünü yeniden başlatmak mümkün mü?
- 19. Yeniden yazmadan bir dosyaya veri eklemek mümkün mü?
- 20. openURL kullanarak Ayarlar Uygulamasını açmak mümkün mü?
- 21. mümkün mü?
- 22. Visual Studio'daki bir projeyi, klasör adının da yeniden adlandırılacağı şekilde yeniden adlandırmak mümkün mü?
- 23. Kaynak dosyalarını ASP.NET uygulamasını yeniden derlemeden düzenleme
- 24. Verileri Firebase'den eşzamanlı olarak yüklemek mümkün mü?
- 25. C'deki operatörleri aşırı yüklemek mümkün mü?
- 26. Bir javascript yapıcısının farklı nesne türlerini döndürmesi mümkün mü?
- 27. Kök olmadan CentOS'ta g ++ yüklemek mümkün mü?
- 28. Twitter akış filtresi anahtar kelimelerini akışını yeniden başlatmadan değiştirin
- 29. SFSafariViewController'da yerel pdf dosyası yüklemek mümkün mü?
- 30. IOS APP'yi uygulama deposu olmadan yüklemek mümkün mü?
Evet, tek seferlik harika bir fikir. –