当前位置:首页 > 知识 >

Textile继续创新,构建IPFS的Pin功能

在昨天的文章中,我分享了使用Textile配置远程IPFS节点并将其设置为Café模式。接下来,我们先快速测试一下配置的远程节点,可以使用curl工具运行以下命令:

curl "http://xx.xxx.xx.xxx:40601/health"

如果我们得到回复的状态码是“204”,那就说明我们的配置步骤是正确的。如果想要更新Café,可以使用我们提供的脚本文件,下载地址为:

https://gist.github.com/sanderpick/94076679d331215e336b1144c3a8c243

我们还提供了一个

https://gist.github.com/sanderpick/1f00f69af6a4b046364c53816cf508ac

我们已经配置好了远程节点的Textile Café服务,现在我们还需要一个本地节点,并将其与远程节点关联起来。可以重复上面配置远程节点的步骤,在本地运行并设置一个本地节点。设置完成后,我们就会有一个远程节点和一个本地节点。

设置好本地节点后,我们需要用远程节点的ID来注册本地节点,以关联它们。可以在远程节点上运行"textile peer"命令获取远程节点的ID,然后运行以下命令来注册本地节点:

"textile cafes add "

运行成功后,会返回一个包含"access"和"refresh"的JSON Web Token(JWT)信息。这个信息在进行"Pinning"服务时会用到。

可以使用"textile cafes ls"命令列出所有注册的Café节点,还可以使用"textile cafes ls | jq '.[].access'"命令提取access JWT的信息。

我们还可以注册多个Café节点,以增加数据存储的安全性和可靠性。只需要重复上述步骤即可注册多个Café节点。

一旦我们注册了本地节点,任何加入到"Thread"的文件都会自动添加并"pin"到远程Café节点。这就是我们需要的"Pinning"服务。

对于Textile设置Pin服务的步骤总结如下: 1. 使用Textile配置一个远程节点,并将其设置为Café模式。 2. 使用Textile配置一个本地节点。 3. 使用远程Café节点的ID注册本地节点。 4. 创建一个"Thread"。 5. 向"Thread"添加文件,文件会自动Pin到远程节点。

此外,我还想介绍一下IPFS的Pinning服务。

在IPFS中,每个存储的文件都会被分成文件块,每个文件块都有自己的Pin状态,由Pin管理器进行管理。

IPFS的垃圾清理在清理文件时,会根据每个文件块的Pin状态进行相应的处理。

文件块共有5种Pin状态: 1. Recursive状态:文件块树被递归添加到Pin中,根文件块的状态是Recursive,非根文件块的状态是Indirect。 2. Direct状态:只有目标文件块添加到Pin中,子孙块不做处理,目标文件块的状态是Direct。 3. Indirect状态:文件块树被递归添加到Pin中,根文件块的状态是Recursive,非根文件块的状态是Indirect。 4. Internal状态:IPFS使用文件块来保存Pin状态,这些文件块的状态是Internal。 5. NotPinned状态:文件块没有被Pin,在垃圾清理时会被删除。

我是IPFS/Filecoin社区发起人晓熙(加入社区,联系v号:liandaoxixi),IPFS/Filecoin是全球共识最大的去中心化存储项目,我会定期在社区分享专业的资讯,为IPFS/Filecoin爱好者建设一个共赢的学习社区。

参考链接: 1. https://medium.com/textileio/easy-personal-ipfs-pinning-service-with-textile-9d366da4e420 2. https://www.jianshu.com/p/4d3844ee4eab 作者:Filecoin社区

猜你喜欢

微信二维码

微信