Closed AirportR closed 1 year ago
你好。我在阅读源码后,大致了解了测速过程。
在这里我想询问一下:
1、测速使用的URL地址是一个100MB大小的文件,但似乎未进行程序终止的操作,我的意思是,如果一个节点下载速度非常慢,是否会导致主线程一直在等待这个文件下载完毕。才会进行下一个节点的测速。我个人思考应该会的吧?它需要一直等待100MB的文件下载完毕,然后才计算速度结果。这在实际测试过程中,是否会产生不可控因素?等待时间过长也是有可能的。 2、是否考虑多线程测速,毫无疑问,这个程序是单线程测速。 3、延迟测试无缓冲值,也就是说网络波动大的时候,通常它的结果是偏上的。另外,clash官方实现有一个interface名为URLTest,它里面至少也是两次延迟测试取平均。 4、在拉取 http(s)订阅链接的时候,最好设置一个请求头: {headers: "clash"},告诉服务器要拉取的是clash格式的配置文件,这个对V2board有奇效,目前V2Board的通用链接是无法拉取到yaml格式的。
综上,3、4 是可以接受的,欢迎 PR
有空我会尝试的,感谢!
你好。我在阅读源码后,大致了解了测速过程。
在这里我想询问一下:
1、测速使用的URL地址是一个100MB大小的文件,但似乎未进行程序终止的操作,我的意思是,如果一个节点下载速度非常慢,是否会导致主线程一直在等待这个文件下载完毕。才会进行下一个节点的测速。我个人思考应该会的吧?它需要一直等待100MB的文件下载完毕,然后才计算速度结果。这在实际测试过程中,是否会产生不可控因素?等待时间过长也是有可能的。 2、是否考虑多线程测速,毫无疑问,这个程序是单线程测速。 3、延迟测试无缓冲值,也就是说网络波动大的时候,通常它的结果是偏上的。另外,clash官方实现有一个interface名为URLTest,它里面至少也是两次延迟测试取平均。 4、在拉取 http(s)订阅链接的时候,最好设置一个请求头: {headers: "clash"},告诉服务器要拉取的是clash格式的配置文件,这个对V2board有奇效,目前V2Board的通用链接是无法拉取到yaml格式的。