tracker伺服器搭建
❶ fastdfs 與 為什麼要搭建nginx
上次搭建FastDFS使用的版本是v4.05
http://blog.itpub.net/29254281/viewspace-1283539/
這個版本已經比較舊了
最新的版本是v5.04,由於作者重構了代碼,所以安裝過程還是有一些不一致.
最新版本下載地址:
http://sourceforge.net/projects/fastdfs/files/
安裝可以參考壓縮包內的INSTALL文件。
實驗還是搭建一個FastDFS環境,並增加Nginx模塊
所用軟體:
FastDFS_v5.04.tar.gz
libfastcommon-master.zip
fastdfs-nginx-mole_v1.16.tar.gz
nginx-1.6.2.tar.gz
與之前版本不同的是,v5.04首先需要安裝libfastcommon
下載地址:
https://github.com/happyfish100/libfastcommon.git
1.安裝libfastcommon
在每一台伺服器上,解壓libfastcommon,進入libfastcommon-master目錄執行
./make.sh
./make.sh install
可以看到libfastcommon.so安裝到了/usr/lib64/libfastcommon.so
但是FastDFS主程序設置的lib目錄是/usr/local/lib
所以需要創建軟鏈接.
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
2.安裝FastDFS主程序
這個版本似乎已經不需要libevent依賴
在每台伺服器,解壓縮FastDFS_v5.04.tar.gz,進入FastDFS目錄
執行
./make.sh
./make.sh install
如果上步的軟鏈接創建成功,就應該會非常順利。
配置Tracker伺服器(192.168.1.70)
vim /etc/fdfs/tracker.conf文件,修改如下內容
base_path=/tracker
然後執行命令
fdfs_trackerd tracker.conf
配置Storage伺服器(192.168.1.80,192.168.1.30)
vim /etc/fdfs/storage.conf
group_name=group1
base_path=/storage
store_path0=/storage
tracker_server=192.168.1.70:22122
然後執行命令
fdfs_storaged storage.conf
執行測試,修改Tracker伺服器192.168.1.70的配置文件/etc/fdfs/client.conf
tracker_server=192.168.1.170:22122
執行命令
[root@mysql1 fdfs]# fdfs_upload_file client.conf /home/nginx/FastDFS_v5.04.tar.gz
group1/M00/00/00/wKgBHlQvrQGARrS6AAU9tcFAzok.tar.gz
3.解壓fastdfs-nginx-mole
FastDFS通過Tracker伺服器,將文件放在Storage伺服器存儲,
但是同組之間的伺服器需要復制文件,有延遲的問題.
假設Tracker伺服器將文件上傳到了192.168.1.80,文件ID已經返回客戶端,
這時,後台會將這個文件復制到192.168.1.30,如果復制沒有完成,客戶端就用這個ID在192.168.1.30取文件,肯定會出現錯誤
這個fastdfs-nginx-mole可以重定向連接到源伺服器取文件,避免客戶端由於復制延遲的問題,出現錯誤。
修改fastdfs-nginx-mole的config文件
原來的內容是
CORE_INCS="$CORE_INCS /usr/local/include/fastdfs /usr/local/include/fastcommon/"
vim /home/nginx/fastdfs-nginx-mole/src/config,修改為
CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon"
各個版本的位置並不統一.所以需要根據自己的版本修改位置。
4.安裝nginx
在每個Storage伺服器上安裝Nginx
http://blog.itpub.net/29254281/viewspace-1283760/
yum -y install gcc automake autoconf libtool make gcc-c++ pcre* zlib openssl openssl-devel
增加fastdfs-nginx-mole模塊
./configure \
--prefix=/home/nginx/nginx-1.6.2 \
--sbin-path=/home/nginx/nginx-1.6.2/nginx \
--conf-path=/home/nginx/nginx-1.6.2/nginx.conf \
--pid-path=/home/nginx/nginx-1.6.2/nginx.pid \
--with-http_ssl_mole \
--add-mole=/home/nginx/fastdfs-nginx-mole/src
make -j `cat /proc/cpuinfo | grep processor| wc -l` && make install
復制fastdfs-nginx-mole源碼中的配置文件到/etc/fdfs
cp /home/nginx/fastdfs-nginx-mole/src/mod_fastdfs.conf /etc/fdfs
修改該配置文件
group_name=group1
tracker_server=192.168.1.70:22122
store_path0=/storage
base_path=/storage
復制FastDFS的配置到/etc/fdfs
修改Nginx配置文件
location /M00 {
root /storage;
ngx_fastdfs_mole;
}
在/storage目錄下創建軟連接,將其鏈接到實際存放數據的目錄,
[root@mysql2 storage]# pwd
/storage
[root@mysql2 storage]# ln -s data/ M00
創建軟鏈接的好處是方便多目錄的管理
啟動Nginx,就可以使用HTTP下載了.
注意事項:
1.FastDFS各個版本安裝方式有差別,需要閱讀INSTALL文件
2.FastDFS各個組件的默認位置可能不同,需要按照版本創建相應的軟鏈接
❷ BTcomet0.61參數要怎樣設置才合理下載時要注意哪些問題
1、 對系統網路參數的優化:windows操作系統默認的網路參數並不適合所有的網路環境,因此需要進行優化調整。但優化的方法仁者見仁,智者見智,觀點不一,建議大家可以選用一些專業的網路優化軟體進行優化;
2、 判斷清楚自己所處的網路環境到底屬於內網還是外網,網路帶寬是多少。這點很關鍵,它將直接影響到你的BC參數是按照怎樣的標准來設置;
關於寬頻ADSL用戶是內網還是外網之完全解析
http://sxworkroom.blogchina.com/sxworkroom/1378762.html
3、 如果是內網用戶,則必須首先要進行埠映射。如果你的軟硬體都支持UPnP自動埠映射功能的話,則打開此功能即可;否則就需要進行手動埠映射。
ADSL MODEM埠映射方法詳解
http://sxworkroom.blogchina.com/sxworkroom/1378770.html
4、 進行系統錯誤的檢查和病毒的全面查殺,最好做一下磁碟碎片整理,保證系統運行在一個健康良好的狀態下。
OK,做好這些工作,就讓我們進入BC的參數設置(以下各圖示所顯示的都是BC的默認設置,具體的參數調整請看文字說明)。
一、 網路連接:
此主題相關圖片如下:
1、 全局最大下載速率:選擇「無限制」 ;
2、 全局最大上傳速率:根據不同的網路情況做不同的設置;
a、 光纖用戶:這類用戶的網路帶寬一般為10M左右,上傳速率可能經常會超過1000kb/s。這類用戶如果完全不限制上傳速度,過於頻繁的讀寫對硬碟會有一定的損耗。對於這類情況,建議合理限制上傳速度為600kb/s至1000kb/s之間;
b、 非光纖用戶:這類用戶主要指ADSL用戶,帶寬一般為512K、1M和2M幾種,這類用戶的上傳速率本身就是受限的,如2M帶寬的上傳速率峰值一般為512Kbit/s=64kB/s。對於這類情況,筆者認為如果你習慣單任務下載,此處可以選擇「無限制」,只在下面講到的「任務設置」中單獨對每個下載任務進行上傳速率的限制即可;但如果你習慣於多任務下載,此處可設置為峰值上傳速率的60%~80%之間,如64kb/s的峰值上傳速率一般設置在40KB/S到45KB/S之間比較合適;
3、 最多同時進行的下載任務數:可以選擇默認的10。但是在實際的下載過程中不建議同時打開過多的任務,一般最好單任務下載,最多以3個任務為宜;
4、 監聽埠:BC通過隨機選擇的監聽埠進行數據的傳輸,所以一定要選擇,否則會大大影響下載的速度和效率。需要注意的是:重新安裝BC後,監聽埠可能會變化,做了埠映射的用戶要修改為原來的監聽埠號;
5、 代理設置:如果沒有穩定的代理伺服器,一般不建議使用代理進行下載;但對於一些BT下載受限的網路用戶,可以考慮使用代理,利用HTTP通道繞開網路BT管制進行下載;
6、 其它按默認設置;
二、 任務設置:
此主題相關圖片如下:
1、 默認下載目錄:如果有外掛的USB硬碟或者雙硬碟,建議把下載目錄選擇到外橡薯掛的USB硬碟或從硬碟上,這樣系統正常運行的讀寫操作和BC下載上傳的讀寫操作分開,可減輕BC下載對系統運行的影響,同時也可以最大程度的減少硬碟的讀寫頻率,降低硬碟的損耗;
2、 下載前先分配空間:此選項主要是為了降低BC下載所引起的磁碟碎片。如果選擇,那麼在BC下載前會花費一些時間進行空間分配。筆者認為此選項可以不選,磁碟碎片的整理完全可以使用專門的碎片整理軟體定期進行整理即可,沒必要每次任務下載前都花費時間進行空間分配;
3、 給未完成的文件添加.bc!後綴:此選項會直接影響到續傳,默認為選擇。但BC的官方網站建議取消此選項,筆者也建議取消此選項。但需要注意的是取消後綴後,下載目錄中的未完成的文件表面上看是個正常的文件,一定要注意在BC中確認文件到底是否下載慶如盯完成;
如果選擇「給未完成的文件添加.bc!後綴」選項,對續傳的影響詳述如下:
一般如果我們不移動下載目錄,不隨意改動文件和目錄名,也不刪除BC下載的任務行,續傳基本沒有什麼問題。
但是,如果我們在文件還未下載完成的情況下,停止下載並刪除了BC中的下載任務行(只移除譽和任務,並不刪除文件),然後再重新打開torrent文件進行續傳時,並不能進入續傳狀態,而始終是下載狀態,此時一開始下載,那麼原來下載好的文件會被覆蓋並從頭開始下載。
這主要的原因是我們在BC的「選項」中選擇了默認的「為未完成的文件加後綴bc!」。而重新打開的torrent文件中的內容文件是沒有bc!後綴的,所以BC並不認你原來未下載完成的帶bc!後綴的文件。因此,無法進行續傳,只能進行下載操作。當下載一開始BC就自動給文件加了個bc!後綴,從而覆蓋了原來的文件。
而把「給未完成的文件添加.bc!後綴」的選項取消就不會產生此類續傳問題;
4、 當分享率達到百分之多少時自動停止任務:BC並沒有提供按照時間來決定何時停止下載或者上傳任務,而是根據分享率來決定的;分享率的概念如下:
下載任務:任務總上傳量 / 任務總下載量
做種任務: 任務總上傳量 / 文件總計大小
此選項一般選擇默認的「無限制」即可,但也可根據實際要求來進行設置;
5、 當所有任務都自動停止後關閉電腦:任務下載完成時,僅當所有任務都同時滿足「分享率達到XX時自動停止任務」和「如果種子小於XX則繼續上傳」這兩個選項而自動停止後,此設置才能實現;
6、 每任務最大上傳速度:光纖用戶可根據實際情況選擇600kb/s到1000kb/s;ADSL等上傳受限用戶可根據自己的上傳峰值速率來設置,一般的原則是設置為上傳峰值速率的55%到75%之間。不同帶寬類型的ADSL用戶的上傳速率可能不同,也可能相同。以常見的512kbit/s=64kb/s上傳速率為例,每任務最大上傳速度設置為35kb/s到45kb/s之間比較合適,這樣既可以保證下載速率,也不違背BT精神。筆者所用寬頻為512kbit/s的峰值上傳速率,此選項選擇40kb/s;
7、 其它選擇默認設置;
三、 界面外觀:
此主題相關圖片如下:
1、 最多顯示的peer數量:建議選擇默認的100。有些人把此項增大為1000,筆者認為完全沒有必要,因為此選項只是決定下載時「用戶列表」中到底顯示多少用戶信息,我們完全沒有必要浪費系統資源來顯示那麼多的peer,而且大部分是沒有連接上的peer;
2、 其它選項根據實際要求和個人喜好選擇;
四、 聊天設置:根據個人喜好選擇;
此主題相關圖片如下:
五、 高級設置:默認設置即可;
此主題相關圖片如下:
1、有些人在備用tracker列表中添加了一堆tracker伺服器,希望能增加連接效率,提高下載速度。筆者認為適得其反!因為目前主流的一些tracker伺服器都是需要進行驗證的,如果你所下載文件的torrent並未在tracker伺服器所對應的發布頁發布,那麼即使你強制連接這個tracker伺服器,伺服器也不會授權你使用它來連接其它客戶端。在BC的「伺服器列表」中我們也可以看到這些伺服器所返回的未授權信息。因此頻繁的無效連接反而佔用了大量的帶寬和系統資源,從而影響了下載的速度。
而且目前主流的發布頁如BT聯盟的發布頁只支持單tracker種子文件的發布,這樣我們所下載的torrent本身就是單tracker的種子文件;
因此,大多數情況下,不建議添加備用的tracker。對於內網用戶,如果沒有做埠映射而需要使用內網互聯功能的話,可以添加udp://tracker.bitcomet.net:8080/announce內網互聯專用的伺服器,而其它的最多添加1~2個無需驗證就可以使用的tracker伺服器即可,如http://tracker.prq.to/announce伺服器等;
2、其它設置選擇默認;
六、 高級設置->網路連接:
此主題相關圖片如下:
1、 運行打開windows網路共享和防火牆ICS/ICF埠(XP有效):選擇默認;
選擇此選項將打開windows自帶的防火牆(ICF)的BC監聽埠,但如果使用其它防火牆,仍然需要在相應的防火牆中打開BC的監聽埠;
ICS是Internet連接共享,有些家庭等小型網路採用此方法來實現多機上網,設置非常簡單,但由於需要主機伺服器常開,所以目前很少有人使用這種方法來共享上網,普遍採用的是NAT和路由的模式,不需要主機伺服器,通過交換機和路由器就可以實現多機同時上網;
2、 允許使用UPnP自動埠映射:根據情況選擇;
如果你的路由器支持UPnP功能,而且操作系統是windows XP或者是windows ME,則選擇此選項。並且要在路由器、操作系統以及防火牆中打開UPnP功能和相應的埠,UPnP功能才能生效;
如果不滿足以上的任何一項,則可以取消此選項;
3、 每任務最大連接數:建議使用默認的「自動調整」;
此選項在默認狀態下,每任務的最大連接數是60,這也是綜合各種情況下的適合大多數網路環境的一個比較均衡的連接數。內網用戶可以適當增大此連接數為80。但注意不要過分增加此連接的數目,因為頻繁的連接會消耗大量的內存和系統資源,反而對下載速度造成嚴重影響,事倍功半。
4、 最大同時嘗試的TCP連接個數:默認為10,建議調整到300,最大不要超過500;
微軟發布的Windows XP SP2增加了TCP同時連接嘗試的限制並且設定為一個很小的值10,系統的TCP連接嘗試超過這個值的時候,系統會因為安全因素而拒絕連接。這樣做的本意是為了防止沖擊波之類的蠕蟲病毒,但這樣一來某些p2p軟體就遭殃了,連接繁忙時可能導致所有網路連接都無法進行了。你可以在「控制面板->管理工具->事件查看器->系統」里看到來源為tcpip的ID為4226的警告:「TCP/IP 已經達到並發TCP連接嘗試次數的安全限制」。這個問題對BC的內網用戶的影響尤其明顯,因為內網用戶只能通過主動發起TCP連接來連上別的客戶端。
BitComet0.55及以後的版本基本解決了這個問題,無需任何配置就可以在SP2下正常工作。BitComet會自動檢測SP2然後自動設置適當的嘗試連接個數。然而SP2默認的過小的連接嘗試仍然可能導致任務開始的時候只能連接到較少的客戶端,從而導致開始的時候速度比較慢,並可能影響其他網路程序的運行,由於連接發起的速度比較慢,對內網用戶而言影響可能非常大,比如Peer很多卻很久也沒有開始下載。內網用戶如果出現常常連接不上半天不能開始下載的問題。仍然建議安裝第三方的的補丁。
下載地址:http://www.lvllord.de/download.php?url=en/EvID4226Patch212-en.p
5、是否允許通過UDP實現內網互聯:外網用戶可選擇「禁止」,內網用戶可選擇「允許」或者「自動檢測」;
傳統bt客戶端中,下載同一個任務的公網用戶可以幫助內網用戶中轉數據,但是內網用戶互相不能連接上。BC可以讓不同內網的用戶通過UDP互相連接實現內網互聯。對內網用戶來說這通常意味著更快的下載速度,因為可以連接上更多的用戶。無需任何設置,BitComet將會自動監測網路連接(自動判斷是否處於NAT後或者沒有埠映射),然後自動開啟內網互聯,從而加速內網下載。
對於內網用戶,如果做了埠映射,BC下載時用戶列表中已經有了「遠程」,那麼就可以選擇關閉內網互聯,以減少帶寬的額外開銷,以及由此帶來的一些統計錯誤,從而獲得最大的下載速度;
6、其它選項選擇默認;
七:高級設置->IP規則:
此主題相關圖片如下:
1、允許向伺服器報告內網IP便於子網內連接:外網不選,內網勾選;
2、啟動IP過濾配置文件ipfilter.dat:BC安裝後的默認ipfilter.dat並未添加任何IP過濾規則,因此選與不選沒有什麼區別;但如果你在ipfilter.dat中設置了IP過濾規則,則需要選上;
關於如何使用IP過濾規則,筆者也沒有深入研究過,電驢在這方面有些相關的文章大家可以查閱一下;
3、部分文章建議「下載任務每IP最大允許連接數」和「上傳務每IP最大允許連接數」分別調整為20和5,筆者並不建議這樣調整。如果在默認情況下,你的下載和上傳速度已經能夠達到或者接近峰值速度,就不必調整此參數了,尤其是ADSL等寬頻速度受限的用戶,不建議調整此參數。而對於光纖用戶,可根據情況適當增大連接數;
八、高級設置—>磁碟緩存:
此主題相關圖片如下:
1、磁碟緩存最大值:光纖用戶可以適當增大磁碟緩存來保護硬碟,避免頻繁的硬碟讀寫操作。根據內存配置的大小可以調整到80M到150M之間;非光纖用戶一般不用調整此參數,默認即可,如果內存比較寬裕,也可以調整到80到100M之間;
BC下載時在「全局統計」中會實時顯示緩存的分配情況,可以根據此狀態來調整緩存的大小到最合適的數值;
2、其它選擇默認設置;
❸ 如何基於fastdfs搭建縮略圖伺服器
目前FastDFS支持類Unix系統 ,在Linux和FreeBSD下測試過,本文使用的是Ubuntu10.4,建議安裝之前先簡單了解一下FastDFS的原理 ,這對後繼的配置部分會有很好的理解。
一、准備工作-安裝libevent
FastDFS 內部綁定了 libevent 作為 http 伺服器 ,在V2.X版本必須安裝 libevent ,本文安裝的是V2.2版本,因此必須安裝libevent。(官方也推薦使用 http 方式下載 文件 )
如果已經安裝了 libevent,請確認安裝路徑是 /usr , 因為 FastDFS 在編譯源程序時,需要到此目錄下查找一些依賴文件,否則編譯 FastDFS 會出錯 。如果不是,建議首先卸載 libevent ,然後安裝到 /usr 下。Ubuntu10.4默認是安裝了libevent,可以到軟體中心卸載掉然後按照下面介紹的方式安裝。
安裝步驟:
解壓 libevent ,然後進入解壓後的目錄分別執行:
Shell代碼
./configure --prefix=/usr
make clean;
make
make install
安裝libevent完成。
二、安裝 FastDFS
1、下載 FastDFS 源程序
2、在 FastDFS_v4.05.tar.gz 所在文件夾下執行:
Shell代碼
sudo tar vxzf FastDFS_v4.05.tar.gz /home/soar/FastDFS
註: /home/soar/FastDFS 也可以是其他目錄,記住這是解壓目錄,以後用 %FastDFS% 表示)
3、由於要使用內置的 http 服務,因此編輯 %FastDFS%/make.sh 文件,找到
#WITH_HTTPD=1
修改成
WITH_HTTPD=1
以支持 http
4、進入 %FastDFS% 目錄,執行:
Shell代碼
sudo ./make.sh
5、在 %FastDFS% 目錄下,執行:
Shell代碼
sudo ./make.sh install
如果運行如上命令後,在命令行信息最後看到類似
Shell代碼
#ln -fs /usr/local/lib/libfastcommon.so.1 /usr/local/lib/libfastcommon.so
#ln -fs /usr/local/lib/libfdfsclient.so.1 /usr/local/lib/libfdfsclient.so
sh ./fdfs_link_library.sh
恭喜你,已經安裝成功了!
FastDFS的配置文件在%FastDFS%/conf目錄下,其中包括
Client.conf 客戶端上傳配置文件
Storage.conf 文件存儲伺服器配置文件
Tracker.conf 負責均衡調度伺服器配置文件
http.conf http伺服器配置文件
配置文件需要根據伺服器環境的不同,進行不同的配置,具體可以參考FastDFS官方的安裝配置文檔http://code.google.com/p/fastdfs/wiki/Setup,以及FastDFS原理介紹文檔http://code.google.com/p/fastdfs/wiki/Overview
在本例中,Tracker Server,Storage Server都安裝在一台伺服器上,IP:10.0.2.15
1、配置及啟動Tracker Server
A、修改%FastDFS%/conf/tracker.conf文件,修改如下
#可以自己指定目錄位置,但目錄必須存在,用於存儲日誌及storage server等信息,否則tracker server無法啟動
Txt代碼
base_path=/home/yuqing/fastdfs -> base_path=/home/soar/fastdfs_tracker
#改成你想要的http埠,將來http下載文件的埠就是他了
Txt代碼
http.server_port=8080 -> http.server_port=8090
#http支持
Txt代碼
##include http.conf -> #include http.conf
#默認4GB,如果空間不足,建議調小,否則會報no free space的異常,無法正常啟動
Txt代碼
reserved_storage_space = 4GB -> reserved_storage_space = 1GB
#tracker server對storage server供服務的埠,使用默認的即可,也可以自定義
Txt代碼
port=22122
B、將http.conf文件拷貝到/etc/fdfs目錄下,執行
Shell代碼
sudo cp %FastDFS%/conf/http.conf /etc/fdfs/
註:為了支持http,必須將這個文件拷貝到此目錄,否則無法啟動,報param http.XXX not exist or is empty類似的錯誤
C、進入/usr/local/bin/目錄,啟動tracker伺服器,執行
Shell代碼
sudo fdfs_trackerd %FastDFS%/conf/tracker.conf
D、進入/home/soar/fastdfs_tracker/logs/trackerd.log查看tracker的啟動日誌,如果看到類似
Shell代碼
[2010-11-04 16:21:25] INFO - FastDFS v2.02, base_path=/home/soar/fastdfs_tracker, connect_timeout=30s, network_timeout=60s, port=22122, bind_addr=, max_connections=256, work_threads=4, store_lookup=2, store_group=, store_server=0, store_path=0, reserved_storage_space=4MB, download_server=0, allow_ip_count=-1, sync_log_buff_interval=10s, check_active_interval=120s, thread_stack_size=64 KB, storage_ip_changed_auto_adjust=1, storage_sync_file_max_delay=86400s, storage_sync_file_max_time=300s
[2010-11-04 16:21:25] INFO - HTTP supported: server_port=8090, default_content_type=application/octet-stream, anti_steal_token=0, token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0, check_active_interval=30, check_active_type=tcp, check_active_uri=/status.html
恭喜你,tracker server已經啟動成功!
2、配置及啟動Storage Server
A、修改%FastDFS%/conf/storage.conf文件,修改如下:
#可以自定義,但必須存在此目錄,用於存儲storage相關的log、group內的相關信息
Txt代碼
base_path=/home/yuqing/fastdfs -> /home/soar/fastdfs_storge
#文件的存儲位置,在一台storage server上可以指定多個存儲位置
Txt代碼
store_path0=/home/yuqing/fastdfs -> store_path0=/home/soar/fastdfs_storge
#必須指定
Txt代碼
group_name=group1
#修改成tracker server的IP和埠信息
Txt代碼
tracker_server=192.168.209.121:22122 -> tracker_server=10.0.2.15:22122
#http支持
Txt代碼
##include http.conf ->#include http.conf
B、進入/usr/local/bin/目錄,啟動storage伺服器,執行
Shell代碼
sudo fdfs_storaged %FastDFS%/conf/storage.conf
C、進入/home/soar/fastdfs_tracker/logs/storage.log查看storage伺服器啟動日誌,如果看到類似
Shell代碼
[2010-11-04 16:37:16] INFO - FastDFS v2.02, base_path=/home/soar/fastdfs_storge, store_path_count=1, subdir_count_per_path=256, group_name=group1, connect_timeout=30s, network_timeout=60s, port=23000, bind_addr=, client_bind=1, max_connections=256, work_threads=4, disk_rw_separated=1, disk_reader_threads=1, disk_writer_threads=1, buff_size=256KB, heart_beat_interval=30s, stat_report_interval=60s, tracker_server_count=1, sync_wait_msec=200ms, sync_interval=0ms, sync_start_time=00:00, sync_end_time=23:59, write_mark_file_freq=500, allow_ip_count=-1, file_distribute_path_mode=0, file_distribute_rotate_count=100, fsync_after_written_bytes=0, sync_log_buff_interval=10s, sync_binlog_buff_interval=60s, sync_stat_file_interval=300s, thread_stack_size=512 KB, upload_priority=10, if_alias_prefix=, check_file_plicate=0, FDHT group count=0, FDHT server count=0, FDHT key_namespace=, FDHT keep_alive=0, HTTP server port=8888, domain name=
[2010-11-04 16:37:16] INFO - HTTP supported: server_port=8888, http_trunk_size=262144, default_content_type=application/octet-stream, anti_steal_token=0, token_ttl=0s, anti_steal_secret_key length=0, token_check_fail content_type=, token_check_fail buff length=0
[2010-11-04 16:37:16] INFO - file: storage_param_getter.c, line: 48, storage_ip_changed_auto_adjust=1
[2010-11-04 16:37:19] INFO - file: tracker_client_thread.c, line: 274, successfully connect to tracker server 10.0.2.15:22122, as a tracker client, my ip is 10.0.2.15
恭喜你,storage server已經啟動成功!
經過前面的安裝、配置、啟動,馬上就可以看到FastDFS的效果了,我們先上傳一個文件,然後再通過http下載。
一、上傳文件
FastDFS安裝包中,自帶了客戶端程序,通過程序可以進行文件上傳。在使用這個客戶端程序之前,首先需要配置client.conf,然後再進行文件上傳及下載。
1、修改%FastDFS%/conf/client.conf文件,修改如下:
#可自定義,但此目錄必須存在,用於存放文件上傳log
Txt代碼
base_path=/home/yuqing/fastdfs-> base_path=/home/soar/fastdfs_tracker
Txt代碼
tracker_server=192.168.209.121:22122 -> tracker_server=10.0.2.15:22122
Txt代碼
http.tracker_server_port=8080 ->http.tracker_server_port=8090
#支持http
Txt代碼
##include http.conf ->#include http.conf
2、進入/usr/local/bin/目錄,上傳文件,執行
Txt代碼
sudo fdfs_test %FastDFS%/conf/client.conf upload a.txt
註:a.txt可以在/usr/local/bin/目錄下自己創建一個
如果命令行反饋類似如下:
則說明上傳文件成功。
關於fastdfs集群和備份配置
1、修改tracker.conf文件中store_lookup=2 平衡負載
2、修改tracker.conf文件中store_server=0 採用輪詢方式。
如果希望只使用一台文件存儲伺服器,其他二台做備份,則修改文件tracker_server為某台主機的IP,只啟動文件存儲伺服器的tracker,其他二台備份伺服器不需要啟動tracker。
如果希望三台伺服器集群使用,互相備份,比如:使用A機器存儲文件,這時候A機器會將文件同步到B機器和C機器,同理使用B機器存儲文件,則會同時將文件同步到A機器和C機器。這時候需要將所有的機器IP和埠號
都配置在storage.conf中,如下所示:
tracker_server=10.207.16.127:22122
tracker_server=10.207.16.129:22122
❹ 手機tracker怎麼添加
手機tracker添加辦法:GPS Tracker是GPS跟蹤器,主要用在人員定位,車輛定位,野外工程勘測,物流調度等場景。
不管是工作場合,還是朋友間聯系,手機通訊錄依然有著強大的價值。在手機更換頻繁的今天,通訊錄備份也顯得格外重要。換手機,換號了,手機丟了,或者手機故障,這些因素都可能導致手機通訊錄的丟失,最好是提前QQ同步助手做好備份。
BT源碼的分布:
把BT的源碼展開之後,可以看到有一些python程序,還有一些說明文件等等,此外還有一個BitTorrent目錄。這些 python程序,實際是一些小工具,比如製作 metafile的、運行tracker伺服器的、運行BT client端的 btdownloadheadless等等。
而這些程序中,用到的一些 python 類的實現,都放在子目錄 BitTorrent 下面。我們的分析工作,通常是從工具程序入手,而隨著分析的展開,則重點是看 BitTorrenet子目錄下的代碼。
❺ 什麼tracker伺服器,它有什麼作用
BT中的tracker是指運行於伺服器上的一個程序,這個程序能夠追蹤到底有多少人同時在下載同一個文件.客戶端連上tracker伺服器,就會獲得一個下載人員得名單,根據這個,BT會自動連上別人的機器進行下載.
作用:
運行於伺服器上,能夠追蹤到底有多少人同時在下載同一個文件。它是提供bt的伺服器。把文件用bt發布出來的人需要知道該使用哪個伺服器來為要發布的文件提供tracker。
對所有下載者的信息進行維護。當它收到一個請求後,首先把對方的信息記錄下來(如果已經記錄在案,那麼就檢查是否需要更新),然後將一部分(並非全部,根據設置的參數已經下載者的請求)參與下載同一個文件(一個tracker伺服器可能同時維護多個文件的下載)的下載者的信息返回給對方。
(5)tracker伺服器搭建擴展閱讀:
具體分析tracker伺服器的實現細節:
要建立一個tracker伺服器,只要運行bttrack.py程序就行了,它最少需要一個參數,就是–dfile,這個參數指定了保存下載信息的文件。Bttrack.py調用track.py中的track()函數。因此,我們跟蹤到track.py中去看track()函數。
Track.py:track()。這個函數首先對命令行的參數進行檢查;然後將這些參數保存到config字典中。在BT中所有的工具程序,都有類似的處理方式。
首先是創建一個RawServer對象,這是一個伺服器對象,它將實現一個網路伺服器的一些細節封裝起來。不僅tracker伺服器用到了RawServer,我們以後還可以看到,由於每個client端也需要給其它client提供下載服務,因此也同時是一個伺服器,client的實現中,也用到了RawServer,這樣,RawServer的代碼得到了重用。關於RawServer的詳細實現,在後面的小節中進行分析。
接著是創建一個Tracker對象。
然後讓RawServer綁定在指定的埠上(通過命令行傳遞進來)。
最後,調用RawServer::listen_forever()函數,使得伺服器投入運行。
最後,在伺服器因某些原因結束運行以後,調用Tracker::save_dfile()保存下載信息。這樣,一旦伺服器再次投入運行,可以恢復當前的狀態。
參考資料:網路
❻ fdfs文件服務環境搭建詳細教程
Linux環境搭建少不了FastDFS的安裝,本文記錄Linux環境下安裝fdfs的步驟。
將安裝包上傳至伺服器
環境安裝好的跳過此步驟
[圖片上傳失敗...(image-c15bdd-1652446961897)]
libfatscommon 是 FastDFS 分離出的一些公用函數包,解壓之後進入libfastcommon目錄,執行 ./make.sh 和 ./make.sh install
同上,進入解壓目錄執行執行 ./make.sh 和 ./make.sh install
編譯成功之後進入 /etc/fdfs ,會出現 client.conf.sample 客戶端文件、 storage.conf.sample 、 tracker.conf.sample 兩個基礎配置文件,將這三個文件復制
再將fastdfs-5.05下conf文件夾中的http.conf和mime.types拷貝到 /etc/fdfs/中供nginx訪問使用
[圖片上傳失敗...(image-45d78d-1652446961897)]
執行命令 vim /etc/fdfs/tracker.conf
base_path=/data/fastdfs/tracker
修改如下:
[圖片上傳失敗...(image-280bff-1652446961897)]
執行命令 service fdfs_trackerd start
啟動成功後,在 /data/fastdfs/tracker 中找到兩個新文件
[圖片上傳失敗...(image-8bcea-1652446961897)]
大致流程和tracker配置一樣
執行命令 vim /etc/fdfs/storage.conf ,修改內容:
store_path0=/data/fastdfs/file
tracker_server=192.168.18.125:22122
http.server_port=8086
日誌文件存儲路徑
[圖片上傳失敗...(image-e550a9-1652446961897)]
文件存儲路徑
[圖片上傳失敗...(image-23e2c1-1652446961897)]
填寫伺服器ip(雲伺服器填內網ip)
[圖片上傳失敗...(image-6c8618-1652446961897)]
執行命令 service fdfs_storaged start
啟動成功後,在 /data/fastdfs/storage 中找到兩個新文件
[圖片上傳失敗...(image-49a113-1652446961897)]
執行 /usr/bin/fdfs_monitor /etc/fdfs/storage.conf ,成功如下
[圖片上傳失敗...(image-f6a0ef-1652446961897)]
執行命令 vim /etc/fdfs/client.conf ,修改內容:
如圖所示
[圖片上傳失敗...(image-aa4a20-1652446961897)]
在 /data/fastdfs 下編寫一個測試文件
[圖片上傳失敗...(image-3e14e4-1652446961897)]
執行命令 /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /data/fastdfs/test.txt
[圖片上傳失敗...(image-395d27-1652446961897)]
成功返迴文件路徑,如圖:
[圖片上傳失敗...(image-80da85-1652446961897)]
如果出現錯誤,請檢查(tracker.conf、storage.conf、client.conf)base_path、store_path0配置路徑是否正確路徑需要一致。
上述文件如果想要在web上查看,就需要配置nginx和fastdfs-nginx-mole模塊
進入fastdfs-nginx-mole-master/src中,執行命令 cp mod_fastdfs.conf /etc/fdfs /將mod_fastdfs.conf文件復制到/etc/fdfs/目錄下
執行命令 vim /etc/fdfs/mod_fastdfs.conf 修改 mod_fastdfs.conf 文件
[圖片上傳失敗...(image-38e7af-1652446961897)]
fastdfs-nginx-mole-master/src/config文件
進入到nginx文件夾中,執行命令 ./configure --add-mole=/data/soft/fastdfs-nginx-mole-master/src (mole後面是fastdfs-nginx-mole-master的解壓路徑)
然後安裝nginx,執行命令 make && make install ,安裝成功編輯nginx.conf
[圖片上傳失敗...(image-ad1b90-1652446961897)]
修改監聽埠為 8086 (和前面配置的埠一致),添加如下內容:
重啟nginx之後,開放指定埠
如果需要其他代理訪問,需要監聽配置這台伺服器的8086埠。
如果 unknown directive 「ngx_fastdfs_mole」 in /usr/local/nginx/conf/nginx.conf:151 ,可能是nginx一直是啟動的,必須要重啟nginx才可以, nginx -s reload 無效。
nginx和之前配置一樣
❼ tracker伺服器及DHT網路節點列表
如何在DHT網路中通過BC鏈接進行BT下載?1.BitComet程序菜單欄:文件>打開BC鏈接 或 Ctrl+U 快捷鍵 。
2."打開BC鏈接"對話框,輸入你通過任何方式獲得的有效的"BC鏈接",點擊確定。
3.開始下載 Torrent文件。
4.種子文件下載完成,正式開始BT任務下載。 如何向其他用戶傳輸Torrent文檔睜件? 1.在BT任務列表中行蘆歲,選中一個BT任務,右鍵--復制BC鏈接。
2.在記事本中,右鍵--粘貼。現在可以通過發嘩橡送該鏈接與其他用戶共享該Torrent文件。
❽ web迅雷,怎麼在已經下了一半的bt任務里添加Tracker伺服器
尊敬的迅雷用戶,您好:
由於web迅雷現在已經沒有維護,建議您使用最新版本迅雷7,舊版本問題會在新版本完善,請登錄迅雷軟體中心(http://dl.xunlei.com)這個頁面,下載一個迅雷7的安裝包進行安裝使用。
迅雷7優點:
下載加速鏡像伺服器加速全網數據挖掘,自動匹配與資源相同的鏡像用戶下載。原理:利用互聯網上的其他伺服器提供的資源進行下載,如用戶下載一個軟體,該軟體在A網站存在,用戶從A網站下載,同時B網站存在相同資源,則迅雷可以從B網站下載,提升了下載速度
2.P2P加速利用P2P技術進行用戶之間的加速,該通道產生的上傳流量會提升通道的健康度,從而提升通道加速效果。原理:若其他迅雷用戶下載過本文件,則下載時可以由其他用戶上傳給自己。
3.高速通道加速高速CDN加速,高速通道可以利用您物理帶寬的上限進行加速,如您是4M的寬頻,那您最高的下載速度是390-420KB/S」,用戶下載了一個迅雷伺服器上沒有的資源,迅雷會記錄資源地址,雲端准備完成後其他用戶在下載時即可用高速通道下載。
4.離線下載加速您只需提交任務鏈接,雲端准備完成後即可高速下載。原理:冷門資源伺服器緩慢,迅雷伺服器可以代替用戶下載,下載後用戶可以從迅雷伺服器上高速下載文件
根據您自身的需求選在您要安裝的下載工具
感謝您對迅雷的支持!
更多疑問,歡迎您向迅雷網路平台提問。
❾ 在centos中怎麼卸載fastdfs
目前FastDFS支持鋒答蠢類Unix系統,在Linux和FreeBSD下測試過,本文使用的是Ubuntu10.4,建議安裝之前先簡單了解一下FastDFS的原理,這對後繼的配置部分會有很好的理解。一、准備工作-安裝libeventFastDFS內部綁定了libevent作為http伺服器,在V2.X版本必須安裝libevent,本文安裝的是V2.2版本,因此必須安裝libevent。(官方也推薦使用http方式下載文件)如果已經安裝了libevent,請確認安裝路徑是/usr,因為FastDFS在編譯源程序時,需要到此目錄下查找一些依賴文件,否則編譯FastDFS會出錯。如果不是,建議首先卸載libevent,然後安裝到/usr下。Ubuntu10.4默認是安裝了libevent,可以到軟體中心卸載掉然後按照下面介紹的方式安裝。安裝步驟:解壓libevent,然後進入解壓後的目錄分別執行:Shell代碼./configure--prefix=/usrmakeclean;makemakeinstall安裝libevent完成。二、安裝FastDFS1、下載FastDFS源程序2、在FastDFS_v4.05.tar.gz所在文件夾下執行:Shell代碼sudotarvxzfFastDFS_v4.05.tar.gz/home/soar/FastDFS註:/home/soar/FastDFS也可以是其他目錄,記住這是解壓目錄,以後用%FastDFS%表示)3、由於要使用內置的http服務,因此編輯%FastDFS%/make.sh文件,找到#WITH_HTTPD=1修改成WITH_HTTPD=1以支持http4、進入%FastDFS%目錄,執行:Shell代碼sudo./make.sh5、在%FastDFS%目錄下,執行:Shell代碼sudo./make.shinstall如果運行如上命令後,在命令行信息銀陪最後看到類似Shell代碼#ln-fs/usr/local/lib/libfastcommon.so.1/usr/local/lib/libfastcommon.so#ln-fs/usr/local/lib/libfdfsclient.so.1/usr/local/lib/libfdfsclient.sosh./fdfs_link_library.sh恭喜你,已經安裝成功了!FastDFS的配置文件在%FastDFS%/conf目錄下,其中包括Client.conf客戶端上傳配置文件Storage.conf文件存儲伺服器配置文件Tracker.conf負責均衡調度伺服器配置文件http.confhttp伺服器配置文件配置文件需要根據伺服器環境的不同,進行不同的配置,具體可以參考FastDFS官方的安裝配置文舉棚檔,以及FastDFS原理介紹文檔在本例中,TrackerServer,StorageServer都安裝在一台伺服器上,IP:10.0.2.151、配置及啟動TrackerServerA、修改%FastDFS%/conf/tracker.conf文件,修改如下#可以自己指定目錄位置,但目錄必須存在,用於存儲日誌及storageserver等信息,否則trackerserver無法啟動Txt代碼base_path=/home/yuqing/fastdfs->base_path=/home/soar/fastdfs_tracker#改成你想要的http埠,將來http下載文件的埠就是他了Txt代碼http.server_port=8080->http.server_port=8090#http支持Txt代碼##includehttp.conf->#includehttp.conf#默認4GB,如果空間不足,建議調小,否則會報nofreespace的異常,無法正常啟動Txt代碼reserved_storage_space=4GB->reserved_storage_space=1GB#trackerserver對storageserver供服務的埠,使用默認的即可,也可以自定義Txt代碼port=22122B、將http.conf文件拷貝到/etc/fdfs目錄下,執行Shell代碼sudocp%FastDFS%/conf/http.conf/etc/fdfs/註:為了支持http,必須將這個文件拷貝到此目錄,否則無法啟動,報paramhttp.XXXnotexistorisempty類似的錯誤C、進入/usr/local/bin/目錄,啟動tracker伺服器,執行Shell代碼sudofdfs_trackerd%FastDFS%/conf/tracker.confD、進入/home/soar/fastdfs_tracker/logs/trackerd.log查看tracker的啟動日誌,如果看到類似Shell代碼[2010-11-0416:21:25]INFO-FastDFSv2.02,base_path=/home/soar/fastdfs_tracker,connect_timeout=30s,network_timeout=60s,port=22122,bind_addr=,max_connections=256,work_threads=4,store_lookup=2,store_group=,store_server=0,store_path=0,reserved_storage_space=4MB,download_server=0,allow_ip_count=-1,sync_log_buff_interval=10s,check_active_interval=120s,thread_stack_size=64KB,storage_ip_changed_auto_adjust=1,storage_sync_file_max_delay=86400s,storage_sync_file_max_time=300s[2010-11-0416:21:25]INFO-HTTPsupported:server_port=8090,default_content_type=application/octet-stream,anti_steal_token=0,token_ttl=0s,anti_steal_secret_keylength=0,token_check_failcontent_type=,token_check_failbufflength=0,check_active_interval=30,check_active_type=tcp,check_active_uri=/status.html恭喜你,trackerserver已經啟動成功!2、配置及啟動StorageServerA、修改%FastDFS%/conf/storage.conf文件,修改如下:#可以自定義,但必須存在此目錄,用於存儲storage相關的log、group內的相關信息Txt代碼base_path=/home/yuqing/fastdfs->/home/soar/fastdfs_storge#文件的存儲位置,在一台storageserver上可以指定多個存儲位置Txt代碼store_path0=/home/yuqing/fastdfs->store_path0=/home/soar/fastdfs_storge#必須指定Txt代碼group_name=group1#修改成trackerserver的IP和埠信息Txt代碼tracker_server=192.168.209.121:22122->tracker_server=10.0.2.15:22122#http支持Txt代碼##includehttp.conf->#includehttp.confB、進入/usr/local/bin/目錄,啟動storage伺服器,執行Shell代碼sudofdfs_storaged%FastDFS%/conf/storage.confC、進入/home/soar/fastdfs_tracker/logs/storage.log查看storage伺服器啟動日誌,如果看到類似Shell代碼[2010-11-0416:37:16]INFO-FastDFSv2.02,base_path=/home/soar/fastdfs_storge,store_path_count=1,subdir_count_per_path=256,group_name=group1,connect_timeout=30s,network_timeout=60s,port=23000,bind_addr=,client_bind=1,max_connections=256,work_threads=4,disk_rw_separated=1,disk_reader_threads=1,disk_writer_threads=1,buff_size=256KB,heart_beat_interval=30s,stat_report_interval=60s,tracker_server_count=1,sync_wait_msec=200ms,sync_interval=0ms,sync_start_time=00:00,sync_end_time=23:59,write_mark_file_freq=500,allow_ip_count=-1,file_distribute_path_mode=0,file_distribute_rotate_count=100,fsync_after_written_bytes=0,sync_log_buff_interval=10s,sync_binlog_buff_interval=60s,sync_stat_file_interval=300s,thread_stack_size=512KB,upload_priority=10,if_alias_prefix=,check_file_plicate=0,FDHTgroupcount=0,FDHTservercount=0,FDHTkey_namespace=,FDHTkeep_alive=0,HTTPserverport=8888,domainname=[2010-11-0416:37:16]INFO-HTTPsupported:server_port=8888,http_trunk_size=262144,default_content_type=application/octet-stream,anti_steal_token=0,token_ttl=0s,anti_steal_secret_keylength=0,token_check_failcontent_type=,token_check_failbufflength=0[2010-11-0416:37:16]INFO-file:storage_param_getter.c,line:48,storage_ip_changed_auto_adjust=1[2010-11-0416:37:19]INFO-file:tracker_client_thread.c,line:274,.0.2.15:22122,asatrackerclient,myipis10.0.2.15恭喜你,storageserver已經啟動成功!經過前面的安裝、配置、啟動,馬上就可以看到FastDFS的效果了,我們先上傳一個文件,然後再通過http下載。一、上傳文件FastDFS安裝包中,自帶了客戶端程序,通過程序可以進行文件上傳。在使用這個客戶端程序之前,首先需要配置client.conf,然後再進行文件上傳及下載。1、修改%FastDFS%/conf/client.conf文件,修改如下:#可自定義,但此目錄必須存在,用於存放文件上傳logTxt代碼base_path=/home/yuqing/fastdfs->base_path=/home/soar/fastdfs_trackerTxt代碼tracker_server=192.168.209.121:22122->tracker_server=10.0.2.15:22122Txt代碼http.tracker_server_port=8080->http.tracker_server_port=8090#支持httpTxt代碼##includehttp.conf->#includehttp.conf2、進入/usr/local/bin/目錄,上傳文件,執行Txt代碼sudofdfs_test%FastDFS%/conf/client.confuploada.txt註:a.txt可以在/usr/local/bin/目錄下自己創建一個如果命令行反饋類似如下:則說明上傳文件成功。關於fastdfs集群和備份配置1、修改tracker.conf文件中store_lookup=2平衡負載2、修改tracker.conf文件中store_server=0採用輪詢方式。如果希望只使用一台文件存儲伺服器,其他二台做備份,則修改文件tracker_server為某台主機的IP,只啟動文件存儲伺服器的tracker,其他二台備份伺服器不需要啟動tracker。如果希望三台伺服器集群使用,互相備份,比如:使用A機器存儲文件,這時候A機器會將文件同步到B機器和C機器,同理使用B機器存儲文件,則會同時將文件同步到A機器和C機器。這時候需要將所有的機器IP和埠號都配置在storage.conf中,如下所示:tracker_server=10.207.16.127:22122tracker_server=10.207.16.129:22122
❿ 製作BT軟體是的Tracker伺服器及DHT網路節點列表要填什麼發布人的地址填什麼
BT下載不是一定要有Tracker伺服器才行嗎?曾經是的,但時代不同了,現在有了DHT網路。DHT是「Distributed Hash Table」的縮寫,中文意思是「分布式哈希表」,是一種分布式存儲方法。在不需要伺服器的情況下,每個客戶端負責一個小范圍的路由,並負責存儲一小部分數據,從而實現整個DHT網路的定址和存儲。新版BiTComet允許同行連接DHT網路和Tracker,這樣,即使Tracker伺服器不能正常和我們的機器進行通信,我們還是能從其他用戶那裡得到更多用戶的信息。運行BiTComet,單擊「選項->選項」命令,然後點擊「網路連接」標簽,勾選右邊窗格中的「允許加入到公用DHT網路」項。同樣地,我們還要勾選「高級設置」標簽頁中的「自動添加DHT網路作為備用Tracker」項。現在,你可以在BiTComet主界面右下角中看到DHT的連接狀態,綠色表示連接成功,同時也會告訴你已經連接了多少個結點,當然是越多越好啦!