Skip to content

Instantly share code, notes, and snippets.

@hagino3000
Last active August 29, 2015 13:57
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hagino3000/9403584 to your computer and use it in GitHub Desktop.
Save hagino3000/9403584 to your computer and use it in GitHub Desktop.
import socket
import time
import threading
def server():
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind(('localhost', 9999))
server_socket.listen(1)
while True:
client, _ = server_socket.accept()
ret = client.recv(1024 * 10)
client.send(ret)
client.close()
def client():
def send(i):
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost', 9999))
client_socket.send('HEllo')
ret = client_socket.recv(1024 * 10)
client_socket.close()
for i in xrange(100000):
send(i)
print('Start server')
server_thread = threading.Thread(target=server)
server_thread.setDaemon(True)
server_thread.start()
time.sleep(0.5)
print('Start client')
start_time = time.time()
client()
end_time = time.time()
print('%f msec passed' % (end_time - start_time,))
import socket
import time
import threading
def server():
server_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_socket.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
server_socket.bind(('localhost', 9999))
server_socket.listen(100)
while True:
client, _ = server_socket.accept()
while True:
ret = client.recv(1024 * 10)
if ret == '':
break
client.send(ret)
print('Close connection')
client.close()
def client():
client_socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
client_socket.connect(('localhost', 9999))
for i in xrange(100000):
client_socket.send('HEllo')
ret = client_socket.recv(1024 * 10)
client_socket.send('')
client_socket.close()
print('Start server')
server_thread = threading.Thread(target=server)
server_thread.setDaemon(True)
server_thread.start()
time.sleep(0.5)
print('Start client')
start_time = time.time()
client()
end_time = time.time()
print('%f msec passed' % (end_time - start_time,))
# -*- coding: utf-8 -*-
import time
import threading
import zmq
def server():
print('Start server')
context = zmq.Context()
receiver = context.socket(zmq.PULL)
receiver.bind("tcp://*:5555")
while True:
ret = receiver.recv()
if ret == 'KILL':
break
receiver.close()
context.term()
def client():
context = zmq.Context()
sender = context.socket(zmq.PUSH)
sender.connect("tcp://localhost:5555")
for i in xrange(100000):
message = "Hello:" + str(i)
sender.send(message)
print("Try to close client")
sender.send('KILL')
sender.close()
context.term()
print("Close Done")
def main():
server_thread = threading.Thread(target=server)
server_thread.start()
start_time = time.time()
client()
end_time = time.time()
print("Passed %f" % (end_time - start_time))
server_thread.join()
if __name__ == "__main__":
main()
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment