1500字范文,内容丰富有趣,写作好帮手!
1500字范文 > jquery文件上传插件uploadify 讲解

jquery文件上传插件uploadify 讲解

时间:2023-12-02 12:00:11

相关推荐

jquery文件上传插件uploadify 讲解

前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家。点击跳转到教程。

1.名词解释:

tracker服务器:中文叫做跟踪器,主要做调度工作,在访问上起负载均衡的作用。(tracker告诉WWW,与哪台Storage通讯)

storage服务器:中文叫做存储器,主要用来存储数据,它上面可以建立节点(或者叫卷,组)

tracker和storage都可以由多台服务器组成,storage的各位服务器数据都是同步的,这是实现负载均衡的前提。

2.上传流程:

FastDFS file upload 上传文件交互过程:

1. client询问tracker上传到的storage,不需要附加参数;

2. tracker返回一台可用的storage;

3. client直接和storage通讯完成文件上传。

FastDFS file download 下载文件交互过程:

1. client询问tracker下载文件的storage,参数为文件标识(卷名和文件名);

2. tracker返回一台可用的storage;

3. client直接和storage通讯完成文件下载。

首先客户端 client 发起对 FastDFS 的文件传输动作,是通过连接到某一台 Tracker Server (跟踪器)的指定端口来实现的,

Tracker Server 根据目前已掌握的信息,来决定选择哪一台 Storage Server (存储器),

然后将这个Storage Server 的地址等信息返回给 client,

然后 client 再通过这些信息连接到这台 Storage Server,将要上传的文件传送到给 Storage Server上。

client向tracker发一个HTTP的GET请求,并把它自己的信息放在GET的参数中;

这个请求的大致意思是:我是xxx(一个唯一的id),我想下载yyy文件,我的ip是aaa,我用的端口是bbb...

tracker对所有下载者的信息进行维护,当它收到一个请求后,首先把对方的信息记录下来

(如果已经记录在案,那么就检查是否需要更新),然后将一部分

(并非全部,根据设置的参数已经下载者的请求)参与下载同一个文件(一个tracker服务器可能同时维护多个文件的下载)的下载者的信息返回给对方。

Client在收到tracker的响应后,就能获取其它下载者的信息,那么它就可以根据这些信息,与其它下载者建立连接,从它们那里下载文件片断。

FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器(tracker)主要做

调度工作,就像公交车站里面的调务员一样,它负责通过负载均衡选出最优的存储节点(storage)。存储节点(storage)顾名思义就是负责存储、

数据同步、数据的操作的一个服务,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。

所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,

如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。

3.架构简析、特点

FastDFS 是包括一组 Tracker Server 和 Storage Server 的。

Tracker Server 与 Storage Server 之间不直接通信,其基本的信息由配置文件在系统启动加载时获知。

Storage Server 是分成多个 Group,每个 Group 中的Storage 都是互相备份的,

就是说,如果 Group1 有 Storage1、Storage2、Storage3,其容量分别是100GB、100GB、100GB,那么 Group1 的存储能力是 100GB,

而不是 300GB,这就是互相备份的意思。

进一步说,整个 Group 的存储能力由该组中该储能力最小的 Storage 决定。

多个 Group 之间的存储方式,可以采用 round robin(轮训)、load balanced(负载均衡)或指定 Group 的方式。

FastDFS 架构中,数据最终是与一个 available (有空的、可获得的) Storage Server 进行传输的。

FastDFS的特点包括(1)高可靠性:无单点故障;(2)高吞吐量:只要 Group 足够多,数据流量是足够分散的。

(3)适用于小文件存储,因为 FastDFS 不回对文件进行分块。

因为文件比较小(比如普通级别的图片类应用,文件最大就在几个MB的量级),一来没有必要分块, 二来分块会加重服务器的工作量。

但是,如果把 FastDFS 应用于大文件存储的场景,可能这一特点就会变成缺点。

需要说明的是,client为使用FastDFS服务的调用方,client也应该是一台服务器,它对tracker和storage的调用均为服务器间的调用。

以上讲解参考:/mr_smile/article/details/52095966

/question/9124794.html

/lori/archive//05/21/3090134.html

/p/fastdfs

/poechant/article/details/6996047

使用样例见 ;

jQuery上传插件Uploadify使用Demo、本地上传(ssm框架下)

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。