赞
踩
配置文件:tracker.conf 和 storage.conf 参数名:max_connections 缺省值:256 说明:FastDFS为一个连接分配一个task buffer,为了提升分配效率,FastDFS采用内存池的做法。 FastDFS老版本直接事先分配 max_connections 个buffer,这个做法显然不是太合理,在 max_connections 设置过大的情况下太浪费内存。 v5.04对预分配采用增量方式,tracker一次预分配 1024个,storage一次预分配256个。 #define ALLOC_CONNECTIONS_ONCE 1024 总的task buffer初始内存占用情况测算如下 改进前:max_connections * buffer_size 改进后:max_connections和预分配的连接中那个小 * buffer_size 使用v5.04及后续版本,可以根据实际需要将 max_connections 设置为一个较大的数值,比如 10240 甚至更大。 注意此时需要将一个进程允许打开的最大文件数调大到超过max_connections否则FastDFS server启动 会报错。 vi /etc/security/limits.conf 重启系统生效 * soft nofile 65535 * hard nofile 65535 另外,对于32位系统,请注意使用到的内存不要超过3GB
配置文件:tracker.conf 和 storage.conf
参数名: work_threads
缺省值:4
说明:为了避免CPU上下文切换的开销,以及不必要的资源消耗,不建议将本参数设置得过大。
为了发挥出 多个CPU的效能,系统中的线程数总和,应等于CPU总数。
对于tracker server,公式为: work_threads + 1 = CPU数
对于storage,公式为:work_threads + 1 + (disk_reader_threads + disk_writer_threads) *store_path_count = CPU数
配置文件: storage.conf
参数名:subdir_count_per_path
缺省值:256
说明:FastDFS采用二级目录的做法,目录会在FastDFS初始化时自动创建。
存储海量小文件,打开了 trunk存储方式的情况下,建议将本参数适当改小,比如设置为32,此时存放文件的目录数为 32 * 32 = 1024。
假如trunk文件大小采用缺省值64MB,磁盘空间为2TB,那么每个目录下存放的trunk文件数均值 为:2TB/(1024 * 64MB) = 32个
配置文件: storage.conf
参数名:disk_rw_separated:磁盘读写是否分离
参数名:disk_reader_threads:单个磁盘读线程数
参数名:disk_writer_threads:单个磁盘写线程数
如果磁盘读写混合,单个磁盘读写线程数为读线程数和写线程数之和,对于单盘挂载方式,磁盘读写线程分 别设置为 1即可
如果磁盘做了RAID,那么需要酌情加大读写线程数,这样才能最大程度地发挥磁盘性能
配置文件: storage.conf
参数名:sync_binlog_buff_interval:将binlog buffer写入磁盘的时间间隔,取值大于0,缺省值 为60s
参数名:sync_wait_msec:如果没有需要同步的文件,对binlog进行轮询的时间间隔,取值大于0,缺省 值为200ms
参数名: sync_interval:同步完一个文件后,休眠的毫秒数,缺省值为0
为了缩短文件同步时间,可以将上述3个参数适当调小即可
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。