FastDFS的配置、部署與API使用解讀(5)FastDFS配置詳解之Tracker配置

鍾超發表於2011-11-21


《Poechant的FastDFS的配置、部署與API使用教程》

FastDFS的配置、部署與API使用解讀——(1)入門使用教程

FastDFS的配置、部署與API使用解讀——(2)Java API:根據InputStream、檔名、檔案長度上傳檔案

FastDFS的配置、部署與API使用解讀——(3)Java API:根據InputStream、檔名、檔案長度,採用IO流直接轉換的方式上傳檔案

FastDFS的配置、部署與API使用解讀——(4)設定FastDFS配置引數的兩種方式

FastDFS的配置、部署與API使用解讀——(5)FastDFS配置詳解之Tracker配置

FastDFS的配置、部署與API使用解讀——(6)FastDFS配置詳解之Storage配置

FastDFS的配置、部署與API使用解讀——(7)關於FastDFS的Nginx的一些Q&A彙總

FastDFS的配置、部署與API使用解讀——(8)FastDFS配置詳解之Clinet配置及其兩種初始化方式


FastDFS的配置、部署與API使用解讀(5)FastDFS配置詳解之Tracker配置

  • 作者:柳大·Poechant(鍾超)
  • 郵箱:zhongchao.ustc#gmail.com(# -> @)
  • 部落格:Blog.CSDN.net/Poechant
  • 日期:Nov 12th, 2011

本文是 tracker.conf 配置檔案的詳細介紹。

1 基本配置

disable

#func:配置是否生效
#valu:true、false
disable=false

bind_addr

#func:繫結IP
#valu:IP地址
bind_addr=192.168.6.102

port

#func:服務埠
#valu:埠整數值
port=22122

connect_timeout

#func:連線超時
#valu:秒單位正整數值
connect_timeout=30

network_timeout

#func:網路超時
#valu:秒單位正整數值
network_timeout=60

base_path

#func:Tracker資料/日誌目錄地址
#valu:路徑
base_path=/home/michael/fdfs/base4tracker

max_connections

#func:最大連線數
#valu:正整數值
max_connections=256

work_threads

#func:執行緒數,通常設定CPU數
#valu:正整數值
work_threads=4

store_lookup

#func:上傳檔案的選組方式。
#valu:0、1或2。
# 0:表示輪詢
# 1:表示指定組
# 2:表示儲存負載均衡(選擇剩餘空間最大的組)
store_lookup=2

store_group

#func:指定上傳的組,如果在應用層指定了具體的組,那麼這個引數將不會起效。另外如果store_lookup如果是0或2,則此引數無效。
#valu:group1等
store_group=group1

store_server

#func:上傳伺服器的選擇方式。(一個檔案被上傳後,這個storage server就相當於這個檔案的storage server源,會對同組的storage server推送這個檔案達到同步效果)
#valu:0、1或2
# 0: 輪詢方式(預設)
# 1: 根據ip 地址進行排序選擇第一個伺服器(IP地址最小者)
# 2: 根據優先順序進行排序(上傳優先順序由storage server來設定,引數名為upload_priority),優先順序值越小優先順序越高。
store_server=0

store_path

#func:上傳路徑的選擇方式。storage server可以有多個存放檔案的base path(可以理解為多個磁碟)。
#valu:
# 0: 輪流方式,多個目錄依次存放檔案
# 2: 儲存負載均衡。選擇剩餘空間最大的目錄存放檔案(注意:剩餘磁碟空間是動態的,因此儲存到的目錄或磁碟可能也是變化的)
store_path=0

download_server

#func:下載伺服器的選擇方式。
#valu:
# 0:輪詢(預設)
# 1:IP最小者
# 2:優先順序排序(值最小的,優先順序最高。)
download_server=0

reserved_storage_space

#func:保留空間值。如果某個組中的某個伺服器的剩餘自由空間小於設定值,則檔案不會被上傳到這個組。
#valu:
# G or g for gigabyte
# M or m for megabyte
# K or k for kilobyte
reserved_storage_space=1GB

log_level

#func:日誌級別
#valu:
# emerg for emergency
# alert
# crit for critical
# error
# warn for warning
# notice
# info for information
# debug for debugging
log_level=info

run_by_group / run_by_user

#func:指定執行該程式的使用者組
#valu:使用者組名或空
run_by_group=

#func:
#valu:
run_by_user=

allow_hosts

#func:可以連線到tracker server的ip範圍。可設定多個值。
#valu
allow_hosts=

check_active_interval

#func:檢測 storage server 存活的時間隔,單位為秒。
#      storage server定期向tracker server 發心跳,
#      如果tracker server在一個check_active_interval內還沒有收到storage server的一次心跳,
#      那邊將認為該storage server已經下線。所以本引數值必須大於storage server配置的心跳時間間隔。
#      通常配置為storage server心跳時間間隔的2倍或3倍。
check_active_interval=120

thread_stack_size

#func:設定執行緒棧的大小。 執行緒棧越大,一個執行緒佔用的系統資源就越多。
#      如果要啟動更多的執行緒(V1.x對應的引數為max_connections,V2.0為work_threads),可以適當降低本引數值。
#valu:如64KB,預設值為64,tracker server執行緒棧不應小於64KB
thread_stack_size=64KB

storage_ip_changed_auto_adjust

#func:這個引數控制當storage server IP地址改變時,叢集是否自動調整。注:只有在storage server程式重啟時才完成自動調整。
#valu:true或false
storage_ip_changed_auto_adjust=true

2 同步

storage_sync_file_max_delay

#func:同組storage伺服器之間同步的最大延遲時間。儲存伺服器之間同步檔案的最大延遲時間,根據實際情況進行調整
#valu:秒為單位,預設值為1天(24*3600)
#sinc:v2.0
storage_sync_file_max_delay=86400

storage_sync_file_max_time

#func:儲存伺服器同步一個檔案需要消耗的最大時間,預設為300s,即5分鐘。
#sinc:v2.0
storage_sync_file_max_time=300

sync_log_buff_interval

#func:同步或重新整理日誌資訊到硬碟的時間間隔。注意:tracker server 的日誌不是時時寫硬碟的,而是先寫記憶體。
#valu:以秒為單位
sync_log_buff_interval=10

3 trunk 和 slot

#func:是否使用trunk檔案來儲存幾個小檔案
#valu:true或false
#sinc:v3.0
use_trunk_file=false

#func:最小slot大小
#valu:<= 4KB,預設為256位元組
#sinc:v3.0
slot_min_size=256

#func:最大slot大小
#valu:>= slot_min_size,當小於這個值的時候就儲存到trunk file中。預設為16MB。
#sinc:v3.0
slot_max_size=16MB

#func:trunk file的size
#valu:>= 4MB,預設為64MB
#sinc:v3.0
trunk_file_size=64MB

4 HTTP 相關

是否啟用 HTTP

#func:HTTP是否生效
#valu:true或false
http.disabled=false

HTTP 伺服器埠號

#func:tracker server上的http port
#valu:
#note:只有http.disabled=false時才生效
http.server_port=7271

檢查Storage存活狀態的間隔時間(心跳檢測)

#func:檢查storage http server存活的間隔時間
#valu:單位為秒
#note:只有http.disabled=false時才生效
http.check_alive_interval=30

心跳檢測使用的協議方式

#func:檢查storage http server存活的方式
#valu:
# tcp:連線到storage server的http埠,不進行request和response。
# http:storage check alive url must return http status 200.
#note:只有http.disabled=false時才生效
http.check_alive_type=tcp

檢查 Storage 狀態的 URI

#func:檢查storage http server是否alive的uri/url
#note:只有http.disabled=false時才生效
http.check_alive_uri=/status.html

need_find_content_type

#func:if need find content type form file extension name
#note:只有http.disabled=false時才生效
http.need_find_content_type=true

HTTP 配置檔案

#func:”#include http.conf“表示redirect to include other settings
#include http.conf

-

轉載請註明來自柳大的CSDN部落格:Blog.CSDN.net/Poechant

-


相關文章