虽然IPFS在很多方面都很棒,但它也有自己的问题

来源:区块星球BlockPlanet  作者:区块星球BlockPlanet  时间:2019-01-18

   星际文件系统非常适合以分散的方式存储数据,它是在区块链空间中存储数据最常用的工具之一。在区块链中存储数据既昂贵又缓慢,而在IPFS中存储数据既免费又快速。IPFS不允许通过散列来复制数据,而散列两次将返回相同的散列。

  IPFS似乎工作得很好。你可以添加数据,它会留在这个节点的全局网络中。任何具有散列的人都可以访问数据(注意,除非使用私有IPFS节点,否则IPFS上的所有数据都是公共的),并且相同的数据不会重复。此时您可能会问的问题是,“我可以使用IPFS更改数据库并完全分散吗”

  虽然IPFS非常适合存储数据,但如果IPFS节点宕机,它不能保证数据可用。困惑吗想象一下。启动IPFS节点,运行一个月,其中包含非常重要的数据。你的机器坏了,你很庆幸这是一个公共网络这样其他人就能得到你的数据,对吧不完全是,IPFS从不保证您的数据总是可用的。没有其他节点对它感兴趣,因此除了您的忠实节点之外,没有其他人固定您的数据。因此,您的数据将丢失,因为没有其他节点拥有它。

  这就是Filecoin的作用,Filecoin允许其他节点存储您的数据,以防您的节点宕机,并收取少量费用,以避免丢失您的私有数据。Filecoin非常棒,让我们使用它吧!嗯,现在还没有……Filecoin正在开发中,将来的某个时候会上市。目前,我们必须采用现有的解决办法,包括:

  运行多个IPFS节点

  ~ /备份。ipf文件夹

  运行IPFS-cluster

  使用其他方法(如Storj)

  有比这更多的解决方案,但是我想讨论的是ipfs集群。Ipfs-cluster允许运行多个节点,每个节点复制数据并使用RAFT consensus保持节点同步。让我们看看需要多少个节点来保证系统的安全。一般情况下,节点可能会宕机或失去internet连接。假设我们有t个节点,我们至少需要t 1来保持系统运行,简单来说;这只意味着至少有一个节点在运行,即使其他节点都在运行。如果你认为5个节点不可能同时下降那么你的风险因子t是4。

  IPFS集群使用IPFS节点存储数据,它构建在标准IPFS之上,这意味着使用集群并不意味着运行不同的IPFS节点,而是运行与使用纯IPFS相同的节点。IPFS集群有一个代理节点,用于存储所有pin请求并实现RAFT算法(基于Leader的方法)。

  虽然IPFS在很多方面都很棒,但它也有自己的问题

  其思想是,您将与处理同步和备份的IPFS集群代理节点进行交互,这样您就可以将其完全视为IPFS节点。ip - cluster节点之间交换消息,例如请求确定散列或发送心跳消息以知道节点是否宕机。这种方法的最大优点之一是,一旦节点重新启动,它就可以接收它错过的所有消息,并在短时间内获得最新消息。

  虽然IPFS在很多方面都很棒,但它也有自己的问题

  这太棒了!什么都用IPFS 不要这么快!

  虽然IPFS在很多方面都很棒(甚至还有回购),但它也有自己的问题。当IPFS节点连续连接到越来越多的节点时,它的内存使用量会变得非常大——更不用说它消耗的带宽了!对于IPFS节点来说,1gb的内存是不够的,操作系统(Ubuntu)会在IPFS守护进程开始使用过多内存时杀死它,当您看到它时,您看到的只是一个单词“已死”。这听起来很可怕,如果您的应用程序依赖于IPFS全天运行,那么您将需要一台具有更多内存和带宽容量的机器。然而;解决这个问题还有其他的办法。(注意,这是IPFS节点的问题,而不是IPFS集群的问题)。

  限制IPFS连接的节点数量可以解决这个问题,并且可以通过两种方式之一来实现(这里讨论的所有内容都在~/. IPFS /config中的IPFS配置文件中)。

  手动:通过更改配置文件以禁用MDNS发现或将间隔设置得太高(不建议这样做,它实际上将您的节点与网络的其他部分隔离开来,其他IPFS节点能够从您的节点获取内容的可能性非常低)。

  通过使用IPFS连接管理器来限制节点连接的数量。它有三个属性:

  1-最大连接:

  节点允许的最大连接数,并在此之后开始删除连接。

  2-最小连接:

  节点试图维护的最小连接数

  3-时间间隔:

  之后,最大和最小的时间限制将被检查,例如,如果一分钟然后你的节点将确保每一分钟分钟数≤同行(ipf群同龄人| wc - l)≤最大连接

  什么是IPFS?

  IPFS全称是Inter Planetary File System,直接翻译的话叫做“星际文件系统”,它由Protocol Lab提出,是一种点对点(P2P)的分布式文件系统。不过虽然说它是文件系统,是一种用来存储数据的技术,但更确切的说IPFS是一种传输协议。IPFS将HTTP视为对手,宣传上要对飙HTTP,而HTTP(超文本传输协议)就是一种传输协议,现在大家都在用,这里就不再另行科普。类比HTTP,我们要在网上找到想要的内容,就要输入网址,网址是多是HTTP开头,所以也必须经过它。HTTP通过域名、IP及多个中心服务器的中转,再进行文件的上传下载。HTTP的功绩无可取代,现在我们上网都要依赖于HTTP。但HTTP也存在一些问题,比如性能效率不是非常高,过度依赖于中心服务器与主干网络等等。IPFS与之相比,它是一种多中心化的解决方案,内容寻址不是通过域名、IP,而是通过唯一HASH密钥来进行数据寻找。IPFS是个分布式文件存储系统,文件数据并不储存在一个中心化的服务器中,而是存储在网络上所有符合条件的电脑上。这一点有点像P2P种子下载,比如你下载一部小电影,下载资源来自网络上许许多多也在下载该电影的用户的电脑,而不是从某个电影网站的中心服务器下载。当然,IPFS不止如此,还有很多其他的特性,层次与应用范围并不是P2P下载可相比的。

您可能喜欢
Copyright © 2017 iIPFS.cn IPFS/FileCoin资讯站