reconnect added
--HG-- branch : sandbox
This commit is contained in:
@@ -12,7 +12,7 @@ from argparse import ArgumentParser
|
|||||||
import eventlet
|
import eventlet
|
||||||
import logging
|
import logging
|
||||||
import os
|
import os
|
||||||
from eventlet.green import socket
|
import socket
|
||||||
import sys
|
import sys
|
||||||
import cPickle as pickle
|
import cPickle as pickle
|
||||||
|
|
||||||
@@ -34,21 +34,28 @@ def main(argv=None):
|
|||||||
print args
|
print args
|
||||||
# application
|
# application
|
||||||
address = ('localhost', 8010)
|
address = ('localhost', 8010)
|
||||||
|
eventlet.spawn_n(subscriber, address)
|
||||||
while True:
|
while True:
|
||||||
subscriber(address)
|
|
||||||
eventlet.sleep(1)
|
eventlet.sleep(1)
|
||||||
|
|
||||||
def subscriber(address):
|
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:
|
while True:
|
||||||
s = cx.recv(4096)
|
while True:
|
||||||
item = pickle.loads(s)
|
try:
|
||||||
LOG.info("%s", item)
|
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__':
|
if __name__ == '__main__':
|
||||||
|
|||||||
Reference in New Issue
Block a user