Make sure to use different servers

master
Nixellion 2020-07-18 15:17:53 +03:00
parent 0cbe5bb1e6
commit 34cfe3cf51
2 changed files with 10 additions and 8 deletions

View File

@ -11,8 +11,8 @@ ros_fasttrack_comment: 'defconf: fasttrack'
ros_ip: 192.168.88.1
ros_maximum_speed: 15000000
ros_minimum_speed: 100000
speedtest_threads: 4
speedtest_master_threads: 2
speedtest_threads: 2
speedtest_master_threads: 4
ros_queues:
- eth_LTE6_1
- eth_LTE_0

View File

@ -9,6 +9,7 @@ setup_logging()
from statistics import mean
from threading import Thread
from datetime import datetime
from functools import partial
import speedtest
from dbo import Entry
import routeros_api
@ -257,7 +258,7 @@ def reset_globals():
data_dict = {}
def threaded_speedtest():
def threaded_speedtest(id=0):
global test_started
global downloading
global results_dict
@ -265,8 +266,9 @@ def threaded_speedtest():
try:
s = speedtest.Speedtest()
s.get_servers()
# s.get_best_server()
print(f"Running test...")
s.get_closest_servers(limit=config['speedtest_master_threads'])
s._best.update(s.closest[id])
log.info(f"Running test, server: {s._best['url']}")
test_started = True
downloading = True
s.download(threads=threads)
@ -364,10 +366,10 @@ def test_speed(parallel=2):
sws = Thread(target=threaded_wan_speed)
tests = []
for test in range(parallel):
t = Thread(target=threaded_speedtest)
for test_id in range(parallel):
t = Thread(target=partial(threaded_speedtest, id=test_id))
tests.append(t)
log.info(f"Starting test thread {test}...")
log.info(f"Starting test thread {test_id}...")
t.start()
log.info("Starting monitoring thread...")