2012-03-29 45 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秒)