用JAVA FTP兩台伺服器實時傳輸資料,發現他是雞肋。
網站流量大了,以前買的雙線5M的帶寬已經不夠用了。是以又買了一個百獨的電信伺服器。于是就有了如何解決兩天伺服器的圖檔同步的問題。我首先想到了是JAVA FTP。
因為是圖檔站,從主伺服器到鏡像同步圖檔,覺得背景運作ftp線程上傳挺牛逼的。我就先後使用了ftp4J和sun自己的FtpClient,經過兩天廢寝忘食的努力,全部調試通過,本機程式測試,本機FTP服務全部都沒問題,便興沖沖的更新程式到伺服器上,然後準備撒手睡大覺,可是運作了兩次實際結果卻全部以失敗而告終。
第一個原因是速度奇慢無比,我一個5M獨享的雙線(在河南)和一個百M獨享的電信(在安徽),網絡使用高峰時傳輸速度居然隻有3K-5K。我去= =b,半夜速度倒是能達到40K左右,但是我要求的實時性比較強一點。好吧,難道是我要求太高了?我認錯。
第二個原因是莫名其妙的中斷,一個檔案夾有20個檔案,傳了10個,額,剩下的就停下不傳了。什麼?我的線程有問題?好吧,但是,哥,你報FTP錯誤DataTransfer Failed,Aborted難道也是我線程的問題麼?還有的時候甚至一個不傳。
打擊太大了,還是換回老本行吧。隻得在鏡像伺服器啟了一個TOMCAT,主要功能是兩個,第一個是接受主機發送的網絡圖檔位址(HTTP)和本地位置放入隊列,第二個是起一個自動把序列上的圖檔下載下傳到本鏡像伺服器上。。。主伺服器機和鏡像伺服器的這些操作都是用線程處理的,不會影響實際對網站的操作。本來呢,覺得這個方法老土,不太看好,但是實際的效果顯示,效果卻十分的好。這些都序列裡的圖檔位址都是是HTTP連結,鏡像上的伺服器下載下傳速度甚至能達到100K到200K。
還是玩HTTP比較好玩一點,最後完美解決伺服器和鏡像上的資料實時的更新,當時不是完全實時。幾十秒内可以同步。
最後給我的小站加個外鍊:偷星九月天漫畫免費閱讀
。