Persistência de conexões urllib.request com um servidor HTTP

Eu quero fazer alguns testes de desempenho em um de nossos servidores Web, para ver como o servidor lida com muitas conexões persistentes. Infelizmente, não estou muito familiarizado com HTTP e testes na web. Aqui está o código Python que eu tenho para isso até agora:

import http.client
import argparse
import threading


def make_http_connection():
    conn = http.client.HTTPConnection(options.server, timeout=30)
    conn.connect()


if __name__ == '__main__':
    parser = argparse.ArgumentParser()

    parser.add_argument("num", type=int, help="Number of connections to make (integer)")
    parser.add_argument("server", type=str, help="Server and port to connect to. Do not prepend \'http://\' for this")

    options = parser.parse_args()

    for n in range(options.num):
        connThread = threading.Thread(target = make_http_connection, args = ())
        connThread.daemon = True
        connThread.start()

    while True:
        try:
            pass
        except KeyboardInterrupt:
            break

Minha pergunta principal é esta:Como mantenho essas conexões ativas? Eu defini um tempo limite longo, mas esse é um método muito grosseiro e nem tenho certeza se isso afeta a conexão. Basta solicitar um ou dois bytes de vez em quand

(Além disso, em uma nota não relacionada, existe um procedimento melhor para aguardar uma interrupção do teclado do que o feiowhile True: bloco no final do meu código?)

questionAnswers(8)

yourAnswerToTheQuestion