如何提高webdav的性能

问题描述

我正在使用WsgiDAV,它是基于Wsgi的通用可扩展WebDAV服务器,该服务器使用的是cheroot HTTP服务器。 我面临的问题是,到webdav的上载和下载速度非常慢。在Windows上约为0.33 mbps,在Mac上约为0.6 mbps。我已经进行了很多有关提高性能的研究,但仍然可以利用。 webdav托管在Windows Server 2016 OS上

我尝试增加线程数,限制日志记录,尝试使用ssl和不使用ssl,但是似乎没有任何效果

在日志中,我可以看到对每种资源有多个请求,一个来自授权用户,另一个来自匿名用户,几乎每次401都是未经授权的。

上传到webdav时,上传进度条的拍摄率高达90-95%,表明数据传输速度很高,然后停留很长时间然后结束,几乎每次都会发生。

任何人都可以指出我要改善性能的方向。我尝试使用旧版本和新版本3.0.3,但性能几乎保持不变。

INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:18] "PROPFIND " length=0,depth=0,elap=0.000sec -> 401 Not Authorized
INFO    :  84.121.236.116 - admin - [2020-09-23 18:48:18] "PROPFIND " length=0,elap=0.002sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:18] "PROPFIND /desktop.ini" length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:18] "PROPFIND /desktop.ini" length=0,elap=0.001sec -> 404 Not Found
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:18] "PROPFIND " length=0,depth=1,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:18] "PROPFIND " length=0,elap=0.067sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:21] "PROPFIND /Fel PPv4_new2.mp4" length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:21] "PROPFIND /Fel PPv4_new2.mp4" length=0,elap=0.000sec -> 404 Not Found
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:21] "PROPFIND " length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:21] "PROPFIND " length=0,elap=0.001sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:21] "PUT /Fel PPv4_new2.mp4" length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:21] "PUT /Fel PPv4_new2.mp4" length=0,elap=0.000sec -> 201 Created
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:21] "LOCK /Fel PPv4_new2.mp4" length=199,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:21] "LOCK /Fel PPv4_new2.mp4" length=199,depth=infinity,elap=0.005sec -> 200 OK
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:22] "HEAD /Fel PPv4_new2.mp4" elap=0.005sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:48:22] "HEAD /Fel PPv4_new2.mp4" depth=0,elap=0.005sec -> 200 OK
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:48:22] "PUT /Fel PPv4_new2.mp4" length=24674726,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "PUT /Fel PPv4_new2.mp4" length=24674726,elap=33.691sec -> 204 No Content
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "PROPPATCH /Fel PPv4_new2.mp4" length=443,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "PROPPATCH /Fel PPv4_new2.mp4" length=443,elap=0.010sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "PROPPATCH /Fel PPv4_new2.mp4" length=443,elap=0.000sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "UNLOCK /Fel PPv4_new2.mp4" elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "UNLOCK /Fel PPv4_new2.mp4" elap=0.001sec -> 204 No Content
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "PROPFIND " length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "PROPFIND " length=0,elap=0.001sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "PROPFIND /Fel PPv4_new2.mp4" length=0,elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "PROPFIND /Fel PPv4_new2.mp4" length=0,elap=0.005sec -> 207 Multi-Status
INFO    :  64.121.191.119 - (anonymous) - [2020-09-23 18:49:28] "GET /Fel PPv4_new2.mp4" elap=0.000sec -> 401 Not Authorized
INFO    :  64.121.191.119 - admin - [2020-09-23 18:49:28] "GET /Fel PPv4_new2.mp4" depth=0,elap=0.005sec -> 200 OK

解决方法

您尝试过使用最新版本的cheroot吗? 我认为cheroot 8.1。中修复了一个known performance problem