在实际应用中ipfs作为分布式存储的代表,解决了存储成本更低、访问效率更高、存储数据更安全等问题。更通俗的与传统的http 相比,分布式存储成本更低,采用内容寻址效率更高,碎片化存储也更安全,不存在删库跑路的风险,分布式存储数据也根本删不掉。在技术上,ipfs 是一个集成了p2p 种子下载器,git 版本控制,和 cdn 内容分发等的分布式文件系统。
1)p2p-对等网络,即对等计算机网络。
是一种在点对点之间分配任务和工作负载的分布式应用架构,是对等计算模型在应用层形成的一种组网或网络形式。其可以定义为:网络的参与者共享他们所拥有的一部分硬件资源(处理能力、存储能力、网络连接能力、打印机等),这些共享资源通过网络提供服务和内容,能被其它对等节点(peer)直接访问而无需经过中间实体。在此网络中的参与者既是资源、服务和内容的提供者(server),又是资源、服务和内容的获取者(client)。
2)git 版本控制。
git 版本控制-git 是一个主流的版本控制产品。
linus 在 1991 年创建了开源的 linux,从此,linux 系统不断发展,已经成为最大的服务器系统软件了。linus 虽然创建了 linux 的核心,但 linux 的壮大是靠全世界热心的志愿者参与的,这么多人在世界各地为 linux 编写代码,那 linux 的代码是如何管理的呢?
在 2002 年以前,世界各地的志愿者把源代码文件通过 diff 的方式发给 linus,然后由 linus本人通过手工方式合并代码!你也许会想,为什么 linus 不把 linux 代码放到版本控制系统里呢?不是有 cvs、svn 这些免费的版本控制系统吗?因为 linus 坚定地反对 cvs 和 svn,这些集中式的版本控制系统不但速度慢,而且必须联网才能使用。有一些商用的版本控制系统,虽然比 cvs、svn 好用,但那是付费的,和 linux 的开源精神不符。
到 2002 年,linux 系统已经发展了十年了,代码库之大让 linus 很难继续通过手工方式管理了,社区的弟兄们也对这种方式表达了强烈不满,于是 linus 选择了一个商业的版本控制系统 bitkeeper,bitkeeper 的东家 bitmover 公司出于人道主义精神,授权 linux 社区免费使用这个版本控制系统。
安定团结的大好局面在 2005 年就被打破了,原因是 linux 社区牛人聚集,不免沾染了一些梁山好汉的江湖习气。开发 samba 的 andrew 试图破解 bitkeeper 的协议(这么干的其实也不只他一个),被 bitmover 公司发现了(监控工作做得不错!),于是 bitmover公司怒了,要收回 linux 社区的免费使用权。linus 可以向 bitmover 公司道个歉,保证以后严格管教弟兄们,嗯,这是不可能的。实际情况是这样的:linus 花了两周时间自己用 c 写了一个分布式版本控制系统,这就是 git!一个月之内,linux 系统的源码已经由 git 管理了。
git 迅速成为最流行的分布式版本控制系统,尤其是 2008 年,github 网站上线了,它为开源项目免费提供 git 存储,无数开源项目开始迁移至 github,包括 jquery,php,ruby 等等。历史就是这么偶然,如果不是当年 bitmover 公司威胁 linux 社区,可能现在我们就没有免费而超级好用的 git 了。
ps:版本控制的英文名称为(version control system),主要有以下几个作用:
①记录文件的所有历史变化。
②错误恢复到某个历史版本。
③多人协作开发编辑同一个文件。
3)cdn
cdn 的全称是 content delivery network,即内容分发网络。
其基本思路是尽可能避开 互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输得更快、更稳定。通 过在网络各处放置节点服务器所构成的在现有的互联网基础之上的一层智能虚拟网络,cdn 系统能够实时地根据网络流量和各节点的连接、负载状况以及到用户的距离和响应时 间等综合信息将用户的请求重新导向离用户最近的服务节点上。其目的是使用户可就近取得 所需内容,解决 internet 网络拥挤的状况,提高用户访问网站的响应速度。
内容分发网络是一种新型网络内容服务体系,其基于 ip 网络而构建,基于内容访问与应用的效率要求、质量要求和内容秩序而提供内 容的分发和服务。而从广义的角度,cdn 代表了一种基于网络而构建的高质量、高效率、 具有鲜明网络秩序的网络应用服务模式。
简单地说,内容分发网络是一个经策略性部署的整体系统,包括分布式存储、负载均衡、网 络请求的重定向和内容管理 4 个要求,而内容管理和全局的网络流量管理是 cdn 的核心所 在。通过用户就近性和服务器负载的判断,cdn 确保内容以一种极为高效的方式为用户的 请求提供服务。
总的来说,内容服务基于缓存服务器,也称作代理缓存,它位于网络的边缘,距用户仅有" 一跳"之遥。同时,代理缓存是内容提供商源服务器的一个透明镜像。这样的架构使得 cdn 服务提供商能够代表他们客户,即内容供应商,向最终用户提供尽可能好的体验,而这些用 户是不能容忍请求响应时间有任何延迟的。
- 编程问答
- 答案列表
位址FS解决了什么问题[朗读]
加入收藏