pilicat-dfs

霹雳猫-分布式文件系统

一种可以将网站图片或上传的文件,进行分布式存放的服务,可自动复制到多台物理机器,可满足高可用和负载均衡

已编译好的程序包

http://git.oschina.net/tavenli/pilicat-dfs/releases

功能介绍

支持多个dfs-node

支持对上传的文件自动复制到多个dfs-node

支持 RestfulAPI 接口,方便各种语言调用

可以对dfs-node进行分组

为什么要使用pilicat-dfs

  • 可使每个应用系统上传的附件,不存放在应用系统目录下,即使上传了图片木马,也执行不了,因为dfs是纯静态

  • 可同时满足多个应用系统上传附件的需求,将多个应用上传的附件存放在统一的一组服务器,方便管理

  • 可以更好的实现CDN,加速对静态资源的访问,因为这里都是纯静态

  • 同一份文件,自动分发到多台物理节点,并支持通过 lvs 或 nginx 实现负载均衡,实现高可用和物理容灾

  • 还有很多优点,就不全部阐述了...

功能使用

  1. dfs-node当做单节点使用,非集群高可用方式
  • 启动dfs-node
cd dfs-node_linux64_v1.0.0
./start.sh

  

  • 上传文件测试
curl -X POST -F file=@/app/test.jpg http://127.0.0.1:8800/api/file

  

  • 服务返回信息
{
"Code": ,
"Msg": "success",
"Data": {
"FileUrlPath": "/file/2017/07/21/5e30cf328e44824ece5ddc52b629b73c.jpg",
"OrgFileName": "test.jpg",
"PubUrl": "http://dsf.hicode.top/file/2017/07/21/5e30cf328e44824ece5ddc52b629b73c.jpg"
}
}

dfs-node配置文件说明

node.name = "dfs-node-1"    //节点名称,在同一个center中唯一
node.public.addr = "0.0.0.0:8700" //用于对外访问端口,主要供web访问上传后的文件,如果是80端口直接对外,可直接绑到80端口上
node.api.addr = "0.0.0.0:8800" //用于内网接口,文件上传、覆盖、删除等操作,都通过该端口,通常绑定在内网IP
node.auth.type = "IpWhiteList" //内网接口的鉴权方式,目前支持 SecretAuth 和 IpWhiteList两种方式,如果不需要鉴权,该项内容留空,或不配置即可
node.auth.token = "26CCD056107481F45D1AC805A24A9E59" //当鉴权类型为 SecretAuth 时,需要配置该项
node.ip.white.list = "127.0.0.1,192.168.1.0/24" //当鉴权类型为 IpWhiteList 时,需要配置该项 dfs.center = "192.168.1.200:8000" //集群高可用服务所在位置,用于自动注册dfs-node
dfs.public.url = "http://dsf.hicode.top:8700" //用于对外访问的域名

  

pilicat-dfs 霹雳猫-分布式文件系统的更多相关文章

  1. 分布式文件系统HDFS,大数据存储实战(一)

    本文进行了以下工作: OS中建立了两个文件,文件中保存了几组单词. 把这两个文件导入了hadoop自己的文件系统. 介绍删除已导入hadoop的文件和目录的方法,以便万一发生错误时使用. 使用列表命令 ...

  2. 笔记之分布式文件系统(DFS)

    不知何故,老外都挺喜欢使用DFS,但是国内公司用这个的不多.一个具体的需求就是,备份服务器在国外,所以启用DFS把国内的数据同步一份到国外进行备份.最近有机会接触DFS,把一些心得体会记录一下. 1. ...

  3. 分布式文件系统 - FastDFS 简单了解一下

    别问我在哪里 也许我早已不是我自己,别问我在哪里,我一直在这里. 突然不知道说些什么了... 初识 FastDFS 记得那是我刚毕业后进入的第一家公司,一个技术小白进入到当时的项目组后,在开发中上传用 ...

  4. HDFS分布式文件系统资源管理器开发总结

      HDFS,全称Hadoop分布式文件系统,作为Hadoop生态技术圈底层的关键技术之一,被设计成适合运行在通用硬件上的分布式文件系统.它和现有的分布式文件系统有很多共同点,但同时,它和其他的分布式 ...

  5. Hadoop 分布式文件系统:架构和设计

    引言 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统.它和现有的分布式文件系统有很多共同点.但同时,它和其他的分布式文件系统 ...

  6. [转]分布式文件系统FastDFS架构剖析

    [转]分布式文件系统FastDFS架构剖析 http://www.programmer.com.cn/4380/ 文/余庆 FastDFS是一款类Google FS的开源分布式文件系统,它用纯C语言实 ...

  7. 【官方文档】Hadoop分布式文件系统:架构和设计

    http://hadoop.apache.org/docs/r1.0.4/cn/hdfs_design.html 引言 前提和设计目标 硬件错误 流式数据访问 大规模数据集 简单的一致性模型 “移动计 ...

  8. 分布式文件系统 - FastDFS

    分布式文件系统 - FastDFS 别问我在哪里 也许我早已不是我自己,别问我在哪里,我一直在这里. 突然不知道说些什么了... 初识 FastDFS 记得那是我刚毕业后进入的第一家公司,一个技术小白 ...

  9. KASS分布式文件系统(Kass File System)

    KASS分布式文件系统(Kass File System),简称KFS,是开始公司自主研发的分布式文件存储服务平台.KFS系统架构及功能服务类似Hadoop/GFS/DFS,它通过HTTP-WEB为上 ...

随机推荐

  1. maven仓库设置

    Maven 中央仓库地址: 1.http://www.sonatype.org/nexus/ 私服nexus工具使用 2.http://mvnrepository.com/ 3.http://repo ...

  2. Adams输出宏代码

    for variable_name=loopobj object_names=.amachinery.* type=macro var set var=filename1 str=(eval(STR_ ...

  3. HDU.5394.Trie in Tina Town(回文树)

    题目链接 \(Description\) 给定一棵\(Trie\).求\(Trie\)上所有回文串 长度乘以出现次数 的和.这里的回文串只能是从上到下的一条链. 节点数\(n\leq 2\times ...

  4. CODEVS 2455 繁忙的都市 SCOI2005(洛谷 P2330)

    题目描述 Description 城市C是一个非常繁忙的大都市,城市中的道路十分的拥挤,于是市长决定对其中的道路进行改造.城市C的道路是这样分布的:城市中有n个交叉路口,有些交叉路口之间有道路相连,两 ...

  5. 2011 ACM 0和1思想

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=2011 题意:求1 - 1/2 + 1/3 - 1/4 + 1/5 - 1/6 + ...前n项的和. 思路 ...

  6. 4535 ACM 礼尚往来 数学排列组合

    题目:http://acm.hdu.edu.cn/showproblem.php?pid=4535 题意:每个礼物都不相同的组合个数 数学规律: 将每个女友排序为1···n,对应的女友送男友的礼物排序 ...

  7. LeetCode(12. 整数转罗马数字)

    问题描述 罗马数字包含以下七种字符: I, V, X, L,C,D 和 M. 字符 数值 I 1 V 5 X 10 L 50 C 100 D 500 M 1000 例如, 罗马数字 2 写做 II , ...

  8. 九大常用排序算法 python

    1.冒泡排序 import random from timewrap import * @cal_time def bubble_sort(li): for i in range(len(li)-1) ...

  9. redis(四)

    hash hash用于存储对象,对象的格式为键值对 命令 设置 设置单个属性 HSET key field value 设置多个属性 HMSET key field value [field valu ...

  10. python网络编程(十)

    select版-TCP服务器 1. select 原理 在多路复用的模型中,比较常用的有select模型和epoll模型.这两个都是系统接口,由操作系统提供.当然,Python的select模块进行了 ...