Advertisement
Guest User

Untitled

a guest
Dec 3rd, 2012
71
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.88 KB | None | 0 0
  1. import time
  2. import logging
  3. import gevent
  4. from kazoo.client import KazooClient
  5. from kazoo.handlers.gevent import SequentialGeventHandler
  6.  
  7.  
  8.  
  9. logging.basicConfig()
  10.  
  11.  
  12. def timeit(f, *args, **kw):
  13.     start = time.time()
  14.     try:
  15.         return f(*args, **kw)
  16.     finally:
  17.         print "executed in {:0.2f} secs".format(time.time() - start)
  18.  
  19.  
  20. def create_nodes(client, prefix, count):
  21.     data = "="*5000
  22.     for i in xrange(count):
  23.         client.create("{}_{}".format(prefix, str(i)), data)
  24.  
  25.  
  26. def read_nodes(client, prefix, count):
  27.     for i in xrange(count):
  28.         client.get("{}_{}".format(prefix, str(i)))
  29.  
  30.  
  31. def test_zk(concur, count):
  32.     client = KazooClient(handler=SequentialGeventHandler())
  33.     client.start()
  34.     greenlets = []
  35.     for i in xrange(concur):
  36.         worker = gevent.spawn_later(0, create_nodes, client, str(i), count)
  37.         greenlets.append(worker)
  38.     gevent.joinall(greenlets)
  39.  
  40.  
  41.  
  42. timeit(test_zk, 20, 300)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement