Redis
 sql >> Teknologi Basis Data >  >> NoSQL >> Redis

pekerja python-rq menutup secara otomatis

Oke saya menemukan masalahnya. Itu karena batas waktu pekerja.

try:
  --my code goes here--
except Exception, ex:
  self.error += 1
  with open("error.txt", "a") as myfile:
     myfile.write('\n%s' % sys.exc_info()[0] + "{}".format(self.url))
  pass

Jadi menurut kode saya, domain berikutnya di-dequeued jika 200 url diambil dari setiap domain. Tetapi untuk beberapa domain, jumlah url tidak mencukupi untuk kondisi dihentikan (seperti hanya 1 atau 2 url).

Karena kode menangkap semua pengecualian dan menambahkan ke error.txt mengajukan. Bahkan pengecualian batas waktu rq rq.timeouts.JobTimeoutException ditangkap dan ditambahkan ke file. Sehingga membuat pekerja menunggu x jumlah waktu, yang mengarah pada pemutusan hubungan kerja.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. cara menjaga caching tetap up to date

  2. Redis Cluster - siap produksi?

  3. Pola Desain JavaScript -- Menghadapi Asinkron yang Tidak Diinginkan

  4. cara mengonfigurasi batas waktu JedisConnectionFactory berdasarkan kerangka boot musim semi

  5. Menginstal Redis di Ubuntu 16.04/18.04