Jag antar att du använder redis-py.
Dokumentationen hänvisar till listen
som äldre version av lib... Du kanske borde använda en annan metod för att läsa meddelanden. Till exempel med en återuppringning
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()
Redigera:
Det är möjligt att din redis-server håller på att ta slut på minne när du publicerar 20 000 meddelanden samtidigt. Försök att öka redis-minnet i redis.conf
fil
maxmemory 500mb # or greater if needed
Det är ett minnesproblem, kolla in den här frågan för mer information om hur man hanterar det.