{"body":"import socket\nimport ssl, time\nfrom select import select\n\n# SET VARIABLES\npacket = [\"GET https://baroquesoftware.com/index.html HTTP/1.1\", \"Host: www.baroquesoftware.com\", \"Connection: Keep-Alive\", \"User-Agent: Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1)\", \"\"]\npacket = \"\\r\\n\".join(packet) + \"\\r\\n\"\nHOST, PORT = 'baroquesoftware.com', 443\n#HOST, PORT = 'localhost', 80\ntotal = []\n\nsock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)\nwrappedSocket = ssl.wrap_socket(sock, ssl_version=ssl.PROTOCOL_TLSv1_1)\nwrappedSocket.setblocking(0)\nconn = wrappedSocket.connect_ex((HOST, PORT))\n\ndef send_all(sock, v):\n    cur = 0\n    while True:\n        a, b, c = select([], [wrappedSocket.fileno()], [])\n        try:\n            cur += wrappedSocket.send(v[cur:])\n        except Exception as e:\n            if isinstance(e, OSError) and e.errno == 2:\n                continue\n            else:\n                raise\n        if cur == len(v):\n            break\n\n\nfor k in range(300):\n    # CREATE SOCKET\n    t0 = time.process_time()\n    for i in range(100):\n\n        # WRAP SOCKET\n        #wrappedSocket = sock\n\n        # CONNECT AND PRINT REPLY\n        send_all(wrappedSocket, packet.encode(\"utf8\"))\n        #print(packet)\n        l = []\n        while True:\n            a, b, c = select([wrappedSocket.fileno()], [], [], 0.0)\n            if not a:\n                break\n            r = wrappedSocket.recv(8192)\n            if not r:\n                break\n            l.append(r.decode(\"utf8\"))\n        #print(\"\".join(l))\n\n        # CLOSE SOCKET CONNECTION\n    t1 = time.process_time()\n    total.append(t1 - t0)\n    print(\"%.3f %d req/s\" % (t1 - t0, 100./(t1 - t0)))\nwrappedSocket.close()\nprint(\"Average: %.3f\" % (sum(total)/len(total)))\nprint(\"Average skipping 10: %.3f\" % (sum(total[10:])/len(total[10:])))","name":"","extension":"txt","url":"https://www.irccloud.com/pastebin/RRBeEcz7","modified":1641974325,"id":"RRBeEcz7","size":1806,"lines":60,"own_paste":false,"theme":"","date":1641974325}