reconnect added
--HG-- branch : sandbox
This commit is contained in:
@@ -12,7 +12,7 @@ from argparse import ArgumentParser
|
||||
import eventlet
|
||||
import logging
|
||||
import os
|
||||
from eventlet.green import socket
|
||||
import socket
|
||||
import sys
|
||||
import cPickle as pickle
|
||||
|
||||
@@ -34,21 +34,28 @@ def main(argv=None):
|
||||
print args
|
||||
# application
|
||||
address = ('localhost', 8010)
|
||||
eventlet.spawn_n(subscriber, address)
|
||||
while True:
|
||||
subscriber(address)
|
||||
eventlet.sleep(1)
|
||||
|
||||
def subscriber(address):
|
||||
try:
|
||||
LOG.info("connecting to %s", address)
|
||||
cx = eventlet.connect(address)
|
||||
except socket.error, e:
|
||||
LOG.error("%i %s", e.errno, e)
|
||||
return
|
||||
while True:
|
||||
s = cx.recv(4096)
|
||||
item = pickle.loads(s)
|
||||
LOG.info("%s", item)
|
||||
while True:
|
||||
try:
|
||||
LOG.info("connecting to %s", address)
|
||||
cx = eventlet.connect(address)
|
||||
break
|
||||
except socket.error, e:
|
||||
LOG.error("%i %s", e.errno, e)
|
||||
eventlet.sleep(1)
|
||||
while True:
|
||||
s = cx.recv(4096)
|
||||
if len(s) == 0:
|
||||
LOG.error("connection broken")
|
||||
break
|
||||
item = pickle.loads(s)
|
||||
LOG.info("%s", item)
|
||||
cx.close()
|
||||
|
||||
|
||||
if __name__ == '__main__':
|
||||
|
||||
Reference in New Issue
Block a user