made iqmanager more complicated and better
This commit is contained in:
parent
c08504a089
commit
a1527b25c8
114
bin/iqmgr.py
114
bin/iqmgr.py
@ -4,58 +4,84 @@ import sys
|
||||
import time
|
||||
import interp.bootstrap
|
||||
from interp.cluster import QueueManager, get_qs
|
||||
from optparse import OptionParser
|
||||
|
||||
m = QueueManager(address=('localhost', 6666), authkey='asdf')
|
||||
m.connect()
|
||||
if __name__ == '__main__':
|
||||
parser = OptionParser(usage = "usage: %s [options] <status|watch|add|fresult #|slay|clear|clearall|clearresults>")
|
||||
|
||||
tq,rq,mq,sq = get_qs(m)
|
||||
parser.add_option('-p', '--port',
|
||||
type="int", dest="port", default=6666,
|
||||
help="specify the port to use on the server (default: %default)")
|
||||
|
||||
if len(sys.argv) == 1:
|
||||
sys.argv.append("st")
|
||||
parser.add_option('-a', '--auth-key',
|
||||
type="str", dest="authkey", default='asdf',
|
||||
help="authkey (default: %default)")
|
||||
|
||||
(options, args) = parser.parse_args()
|
||||
|
||||
if sys.argv[1].startswith("st"):
|
||||
print "interp queue status:"
|
||||
print " tasksq : %d" % tq.qsize()
|
||||
print " resultsq : %d" % rq.qsize()
|
||||
print " masterq : %d" % mq.qsize()
|
||||
print " minionsq : %d" % sq.qsize()
|
||||
|
||||
if sys.argv[1].startswith("wa"):
|
||||
if len(sys.argv) == 3:
|
||||
sleeptime = float(sys.argv[2])
|
||||
if len(args) == 0:
|
||||
cmd = 'status'
|
||||
else:
|
||||
sleeptime = 1
|
||||
cmd = args[0]
|
||||
|
||||
i = 0
|
||||
while True:
|
||||
time.sleep(sleeptime)
|
||||
if i % 20 == 0:
|
||||
print "tasksq resultsq masterq minionsq"
|
||||
print "%d %d %d %d" % \
|
||||
(tq.qsize(),
|
||||
rq.qsize(),
|
||||
mq.qsize(),
|
||||
sq.qsize(),)
|
||||
i += 1
|
||||
m = QueueManager(address=('', options.port), authkey=options.authkey)
|
||||
m.connect()
|
||||
|
||||
if sys.argv[1] == 'add':
|
||||
for i in xrange(int(sys.argv[2])):
|
||||
mq.put('jane')
|
||||
tq,rq,mq,sq = get_qs(m)
|
||||
|
||||
if sys.argv[1] == 'slay':
|
||||
if len(sys.argv) == 2:
|
||||
for i in xrange(mq.qsize()):
|
||||
print i, "killing", mq.get()
|
||||
sq.put("slay")
|
||||
elif len(sys.argv) == 3:
|
||||
for i in xrange(int(sys.argv[2])):
|
||||
print i, "killing", mq.get()
|
||||
sq.put("slay")
|
||||
if cmd.startswith("st"):
|
||||
print "interp queue status:"
|
||||
print " tasksq : %d" % tq.qsize()
|
||||
print " resultsq : %d" % rq.qsize()
|
||||
print " masterq : %d" % mq.qsize()
|
||||
print " minionsq : %d" % sq.qsize()
|
||||
|
||||
if cmd.startswith("wa"):
|
||||
if len(args) == 2:
|
||||
sleeptime = float(args[1])
|
||||
else:
|
||||
sleeptime = 1
|
||||
|
||||
i = 0
|
||||
while True:
|
||||
time.sleep(sleeptime)
|
||||
if i % 20 == 0:
|
||||
print "tasksq resultsq masterq minionsq"
|
||||
print "%d %d %d %d" % \
|
||||
(tq.qsize(),
|
||||
rq.qsize(),
|
||||
mq.qsize(),
|
||||
sq.qsize(),)
|
||||
i += 1
|
||||
|
||||
if cmd == 'add':
|
||||
for i in xrange(int(args[1])):
|
||||
mq.put('jane%d' % i)
|
||||
|
||||
if cmd == 'fresult':
|
||||
for i in xrange(int(args[1])):
|
||||
rq.put('fake.%d' % i)
|
||||
|
||||
if cmd == 'slay':
|
||||
if len(args) == 1:
|
||||
for i in xrange(mq.qsize()):
|
||||
print i, "killing", mq.get()
|
||||
sq.put("slay")
|
||||
elif len(args) == 2:
|
||||
for i in xrange(int(args[1])):
|
||||
print i, "killing", mq.get()
|
||||
sq.put("slay")
|
||||
|
||||
|
||||
if sys.argv[1] == 'clear':
|
||||
for i in xrange(tq.qsize()): print tq.get()
|
||||
for i in xrange(rq.qsize()): print rq.get()
|
||||
for i in xrange(mq.qsize()): print mq.get()
|
||||
for i in xrange(sq.qsize()): print sq.get()
|
||||
if cmd == 'clear':
|
||||
for i in xrange(tq.qsize()): print tq.get()
|
||||
for i in xrange(rq.qsize()): print rq.get()
|
||||
|
||||
if cmd == 'clearall':
|
||||
for i in xrange(tq.qsize()): print tq.get()
|
||||
for i in xrange(rq.qsize()): print rq.get()
|
||||
for i in xrange(mq.qsize()): print mq.get()
|
||||
for i in xrange(sq.qsize()): print sq.get()
|
||||
|
||||
if cmd == 'clearresults':
|
||||
for i in xrange(rq.qsize()): print rq.get()
|
||||
|
Loading…
Reference in New Issue
Block a user