做一款簡單、高效、好用的文件同步工具

最近經常遇到文件同步的場景:開發完將文件上傳到站點、局域網內文件互拷。

因爲很多是相同的文件,覆蓋拷貝費時費力,當然也試了各種工具例如FlashFXP、Beyond Compare,但要麼部署麻煩,要麼配置麻煩,換一臺電腦又得搞一次,賊煩。

然後想着這有啥技術難度,自己搞一個唄,所以就建了這麼一個項目,因爲也是解決自己的痛點,所以目標也很明確,追求簡單、高效、好用。

目前算完成v1.0版本吧,試了局域網內文件的鏡像拷貝,還是賊快賊爽的,Ftp同步暫時沒想到辦法解決一致性校驗的問題,文件還是覆蓋拷貝,但速度也還行,畢竟文件夾有做了校驗。

==========  作者:未聞    出處:博客園 原文鏈接點此處  ==========

一、功能介紹

1. 同步類型

  • 本地 to 本地(本地跨盤符拷貝50個文件,25個文件夾,6.5M,鏡像同步,耗時367.8543毫秒,速度賊快)
  • 本地 to FTP(本地IIS搭建FTP,耗時1433.5284毫秒)
  • FTP to 本地(本地IIS搭建FTP,耗時1100.5071毫秒)
  • FTP to FTP(未測試)

2. 同步模式:鏡像同步、增量同步

3. 文件校驗策略:Size 文件大小,Date 最後修改時間,Hash 文件哈希值

二、設計思路

1.開發環境

  • .NET Framework 4.6
  • Visual Studio 2019
  • FluentFTP 34.0.2

2.簡單畫的類圖

易同步-類圖

三、待解決問題

1. FTP上傳下載的文件,無法保留原文件的屬性(創建時間、修改時間等),導致沒辦法按最後修改時間進行一致性校驗,但是Beyond Compare可以做到保留~有了解還請不吝指點一二。

2. 校驗另一個方式是用文件的哈希值,但是目前試的幾個基於IIS的FTP服務器都不支持返回文件哈希值,所以也沒辦法~

四、參考資料

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章