2012-03-29 101 views
0

我使用WebDaV作为客户端和服务器之间的文件交换解决方案,我都在开发。如何让我的webdav客户端/服务器更快?

客户端使用Apache Commons VFS,服务器使用Glassfish 3 WebDAV servlet。这似乎是明智的选择,不是吗?无论如何,每次我向服务器写入一个文件时(使用FileObject#copyFrom(...)作为例子),我发现操作非常缓慢(当客户端和服务器在同一台机器上运行时,单行文件写入操作的速度非常慢) 。

那么,您是否看到类似的延迟?有什么可以做的改善这些?

回答

2

似乎像commons-vfs的当前实现WebDAV(依赖于老版本的Jackrabbit webdav)解析了它与HTTP响应一起收到的所有DTD。为此,它必须抓住他们在网络上的位置。这显然不是最有效的方法。

为了解决这个问题,我已经开始了一个sardine -backed(从that question发现)实现的commons-VFS-的WebDAV,从而揭示是更快的方式(即100秒。现在测试TAKS 0.233秒)