Exemplo n.º 1
0
def client():
    global context
    form = ClientForm()
    response = ""
    duration = ""
    durations = []
    stats = ""
    url = ""
    if form.is_submitted():
        start = time.time()
        if form.get_button.data:
            # print("GET:", form.get_button.data)
            if form.num_requests.data == 1:
                response = client_get(get_start_port(), CLIENT_ID, key=form.key.data)
                context = response.items[0].context
                duration = str((time.time()-start) * 1000)
            else:
                requests = [client_get]*form.num_requests.data
                requests_params = [{'port': get_start_port(), 'client_id': CLIENT_ID, 'key': form.key.data} for _ in range(form.num_requests.data)]
                durations, responses = run_parallel(requests, requests_params, start_port=START_PORT)
                duration = sum(durations)*1000
                stats = str(get_stats(durations))
                url = generate_plot(durations, 'GET', form.clear.data)
        else:
            # print("PUT:", form.put_button.data)
            if form.num_requests.data == 1:
                response = client_put(get_start_port(), CLIENT_ID, key=form.key.data, val=form.val.data, context=context)
                duration = str((time.time()-start) * 1000)
            else:
                requests = [client_put]*form.num_requests.data
                requests_params = [{'port': get_start_port(), 'client_id': CLIENT_ID, 'key': form.key.data, 'val': form.val.data} for _ in range(form.num_requests.data)]
                durations, responses = run_parallel(requests, requests_params, start_port=START_PORT)
                duration = sum(durations)*1000
                stats = str(get_stats(durations))
                url = generate_plot(durations, 'PUT', form.clear.data)
    return render_template('client.html', server_name=session['server_name'], form=form, response=str(response), duration=duration, stats=stats, url=url)