IPFS技术发展:go-ipfs 0.8.0发布
发布于 3 年前 作者 gmail 867 次浏览 来自 staking

这个版本的重点是让使用 pin 变得更容易!我们有一些的新功能,可以请求远程服务为您固定数据,修改大型 pin 集的速度比以往任何时候都要快。

Go-IPFS 0.8.0 亮点

远程固定服务

现在支持请求远程服务为您固定数据。

此功能是我们对固定方式的重新设计,包括一些常用的功能,例如:

Pin 可以有名称(以及即将到来的元数据)

数据可以固定在前台或后台

可以按名称、CID 或状态搜索 Pin

命令行用户受益于IPFS pin remote命令,从而简化了远程固定操作。内置固定服务 API 客户端还在底层执行所有必要的远程调用:

只要固定服务支持与供应商无关的 IPFS 固定服务 API,就可以直接在 go-ipfs 中使用它。(如果你是Pinata的用户,你可以查看他们的文档了解如何设置一切。)

例子包括:

ipfs pin remote service add mysrv https://my-service.example.com/api-endpoint myAccessTokenipfs pin remote service ls --stat # confirm service mysrv is availablipfs pin remote add /ipfs/bafymydata --service=mysrv --name=myfile # will block until status is pinnedipfs pin remote ls --service=mysrv --name=myfileipfs pin remote rm --service=mysrv --name=myfileipfs pin remote add /ipfs/bafymydata2 --service=mysrv --name=myfile2 --background # queue pin request and finish instantlyipfs pin remote ls --service=mysrv --cid=bafymydata2 --status=queued,pinning,pinned,failedipfs pin remote rm --service=mysrv --cid=bafymydata2 --status=queued,pinning,pinned,failed

在IPFS pin remote–help下可以找到更多示例。

以下是几点注意事项:

远程定位服务使用递归定位。这意味着像ipfs pin remote ls这样的命令不会列出间接固定的 CID。

默认情况下,仅列出已完成且成功的接点。要列出或删除挂起/失败的 PIN,请传递显式状态:例如–status=queue, pins, pins, failed

当固定服务数据存储在配置文件中时,ipfs config由于固定服务API密钥的敏感性,它不能通过IPFS配置命令直接编辑。ipfs pin remote service命令可用于与远程服务设置进行交互

OpenAPI ipfs-pinning-service.yaml使得创建或生成兼容的客户机/服务器变得很容易。任何人都可以实现它,并允许PIN管理。

此外,HTTP API用户现在可以访问/api/v0/pin/remote下的新命令。

远程MFS固定策略

每次ipfs pin remote service addMFS 根目录更改时,通过添加的每个服务都可以负责更新引脚:

$ ipfs config——json pining . remoteservices .mysrv. policies . mfs . enable

为了避免大量更新涌入远程服务,go-ipfs 最多每五分钟发送一次更新。有关自定义此功能行为的详细信息,请参阅配置文档。

更快的本地固定和解除固定

Pin 系统经过重新设计,可以更快、更灵活地跟踪 pin。对于使用多个 pin 的用户来说,这将大大提高列出和修改固定项目集的速度,并降低内存使用量。

重新设计的一部分是为了能够与本地 pin 交互,就像我们现在可以与远程 pin 交互一样(例如,名称,允许多次pin相同的CID,等等)。请随时关注有关 pin 的更多改进。

https://子域上的 DNSLink 名称

以前,由于无法获得多级通配符证书(例如*.ipns.dweb.link无法覆盖en.wikipedia-on-ipfs.org.ipns.dweb.link),DNSLink 名称在具有 https 支持的子域网关上加载时会出现问题。

因此,当尝试通过 go-IPFS 中的 https://子域加载 DNSLink 名称时,我们现在转发到编码的 DNS 名称。因为DNS名称不能包含。在它们中,它们是使用来转义的。

/ipns/en.wikipedia-on-ipfs.org→

Ipns://en.wikipedia-on-ipfs.org→

https://dweb.link/ipns/en.wikipedia-on-ipfs.org→

https://en-wikipedia–on–ipfs-org.ipns.dweb.link单个DNS标签,无TLS错误。

注意:最后一个重定向特定于 https,只有当存在 X-Forwarded-Proto:https标头时才会触发。

可以在配置文档中找到设置自己的公网网关的方法。

QUIC更新

QUIC 支持已经得到了多项升级,包括利用更大的 UDP 接收缓冲区提高性能的能力。

如果您的系统需要额外的配置来允许 IPFS 增加缓冲区大小,那么 Linux 用户可能会注意到在守护进程启动时记录的错误。在日志消息和这里有一个有助于解决这个问题的链接。

不再有 Darwin 386 构建

Go 1.15(最新的Go版本)不再支持 Darwin 386,所以我们也放弃支持。

更新日志

有关版本中包含的更新的完整列表,您可以在这个发布帖中查看变更日志。

即将推出

如果你是 IPFS 桌面或 IPFS Web UI 的粉丝,那么你很幸运。这些 Pin 改进很快也会以 GUI 的形式出现——即将发布的桌面和 Web UI 将允许你使用任何支持 IPFS 固定服务 API 的远程固定服务。

谢谢贡献!

非常感谢在这个版本中贡献补丁和改进的每一个人,58 位!如果没有你们的帮助和反馈,我们不可能做到这一点。

安装、升级并加入我们!

您可以通过安装 go-ipfs 或升级到 go-ipfs 0.8 开始。

根据您的技能、兴趣和可用性,参与 IPFS 的方式有很多种。请查看我们在 GitHub 上的贡献页面,以获得指导和下一步步骤。

对于 IPFS 和整个网络来说,这是一个激动人心的时刻。加入我们!

End

非常感谢您对 IPFS&Filecoin 项目的持续支持。我们很高兴继续与您一起,为人类信息建立一个强大的,去中心化和高效的基础。

欢迎使用OKX交易所
回到顶部