Skip to content

Instantly share code, notes, and snippets.

@Qolt
Last active December 31, 2015 01:59
Show Gist options
  • Save Qolt/7917635 to your computer and use it in GitHub Desktop.
Save Qolt/7917635 to your computer and use it in GitHub Desktop.
#!/usr/bin/python
import socket, os, select, time
sockets = {}
epoll = select.epoll()
data = """*3\r\n$4\r\nHSET\r\n$8\r\ntest_key\r\n$10\r\ntest value\r\n"""
for i in range(50):
s = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM)
s.connect("/tmp/socks")
epoll.register(s.fileno(), select.EPOLLOUT)
sockets[s.fileno()] = s
events = epoll.poll(1)
total = 0; counter = 0
for i in range(200):
for fileno, event in events:
start_time = time.clock()
sockets[fileno].send(data)
sockets[fileno].recv(100)
total += (time.clock() - start_time)
counter += 1
print counter, total
print "%8.3f requests per second" % (counter / total)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment