前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >FastDFS源码学习(一)FastDFS介绍及源码编译安装

FastDFS源码学习(一)FastDFS介绍及源码编译安装

作者头像
杜争斌
发布2022-04-27 19:10:59
8570
发布2022-04-27 19:10:59
举报
文章被收录于专栏:我的博文

FastDFS是淘宝的余庆主导开发的一个分布式文件系统,采用C语言开发,性能较优。在淘宝网、京东商城、支付宝和某些网盘等系统均有使用,使用场景十分广泛。

下图来源:https://blog.csdn.net/kyriehe/article/details/52431495

目前这个系统的源码已在github上开源。 编译FastDFS需要下载以下源码: FastDFS,下载地址:https://github.com/happyfish100/fastdfs libfastcommon,下载地址:https://github.com/happyfish100/libfastcommon 本笔记(教程)采用如下环境进行编译学习,为了保证代码的一致性,建议在同等环境下进行编译学习。系统没有太大的更新,本教程均具有参考价值。 FastDFS版本:fastdfs-5.11.tar.gz libfastcommon版本:libfastcommon-1.0.39.tar.gz libfastcommon库编译安装:     1.解压libfastcommon,进入目录,执行./make.sh进行编译libfastcommon     2.执行./make.sh install 进行安装libfastcommon         安装时将头文件拷贝到/usr/include/fastcommon目录下,动态库libfastcommon.so拷贝到/usr/lib目录下。创建/usr/lib64/libfastcommon.so的软连接 启示:我们自己也可以编写动态库,把接口预留出来(即include中的头文件)供其他开发人员使用。本项目的libfastcommon库在原作者(余庆)的fastdht系统中也有使用。本lib库是将项目中的基础模块提取出来形成的一个基础库,供系统调用使用,这个库在其他系统中也能发挥很大的作用 fastdfs编译安装     1.解压fastdfs,进入目录,执行./make.sh进行编译fastdfs     2.执行./make.sh install 安装fastdfs         安装时将配置文件:client.conf.sample、tracker.conf.sample、storage_ids.conf.sample、storage.conf.sample拷贝到/etc/fdfs/目录下。         将可执行程序文件:fdfs_trackerd、fdfs_storaged、fdfs_monitor、fdfs_test、fdfs_test1、fdfs_crc32、fdfs_upload_file、fdfs_download_file、fdfs_delete_file、fdfs_file_info、fdfs_appender_test、fdfs_appender_test1、fdfs_append_file、fdfs_upload_appender拷贝到/usr/bin目录下 重要文件解释:实际使用时将.sample去掉。     client.conf.sample 客户端配置文件,主要配置client日志目录,tracker服务器地址     tracker.conf.sample 配置tracker日志。     storage.conf.sample 存储服务器配置文件,主要配置日志目录,数据存储目录,tracker服务器地址 整个系统中的重点是tracker服务器,storage需要tracker去发现。client去请求,都是要经过tracker服务器。     该系统有以下优秀策略,将尝试在后续的代码分析中体现出来     1.一个group内文件互为备份,即镜像服务器,上传/下载文件轮询策略,指定特定storage服务器上传/下载策略。上传后,同group的服务器互相备份数据。     2.多个group存储策略可配置,有轮询策略,剩余空间大优先等策略。     3.小文件合并存储功能(将多个小文件合并成一个大文件存储,主要应对小文件inode限制导致inode资源不够)     4.后续使用中发现的其他功能。 由于本教程仅作个人学习分析,没有实际生产环境的支持,未免有失偏颇。还望同行不吝赐教。 参考资料: http://bbs.chinaunix.net/thread-1920470-1-1.html FastDFS FAQ https://blog.csdn.net/kyriehe/article/details/52431495 分布式存储fastDFS

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2018-10-01,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
文件存储
文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档