Saya berasumsi Anda menggunakan redis-py.
Dokumentasi mengacu pada listen
sebagai versi lib yang lebih lama... Mungkin Anda harus menggunakan metode lain untuk membaca pesan. Misalnya dengan panggilan balik
p = r.pubsub()
def my_handler(message):
print 'MY HANDLER: ', message['data']
if item['type'] == 'message':
num += 1
a.parser(item['data'])
print num
p.subscribe('bdwaf', my_handler)
# read the subscribe confirmation message
p.get_message()
Sunting:
Ada kemungkinan server redis Anda kehabisan memori saat Anda memublikasikan 20.000 pesan sekaligus. Coba tambah memori redis di redis.conf
berkas
maxmemory 500mb # or greater if needed
Ini adalah masalah memori, lihat pertanyaan ini untuk informasi lebih lanjut tentang cara menanganinya.