Insider Build 及 Pinning 测试

Sep 29, 2022 at 10:44:23 PM

为了能够在正式发布功能之前进行更充分的测试,我们在 GitHub 上增加了一个新的 Release 类型:Insider Build

目前最新的 Insider Build 可以从这里下载:

https://github.com/Planetable/Planet/releases/tag/insider-20221013-1

这个版本中增加的新功能是借助 Filebase 提供的 Pinning 服务,来让 Planet 中发布的内容可以更快地分发。

Pinning 服务是什么?

在初始状态下,用 Planet 发布的内容,通过本地运行的 IPFS 节点对外提供服务。如果打个比方,这样的状态就像是在用 BitTorrent 下载时,一开始,最初的内容发布者,是整个网络里唯一的做种者(seeder)。

当其他人需要访问内容时,就需要在 P2P 网络上找到做种者。所以,如果没有能够找到,或者连接不顺畅,那么也就无法访问内容。

而 Pinning 服务,就是在发布内容时,使用 API 通知的方式,让 Pinning 服务也保存一份内容,这样网络上就会有更多的 seeder,内容也就会更容易被找到和下载。

Filebase

Filebase 是一家提供分布式存储的初创公司。他们在最近支持了 IPFS,并且提供了一个很可靠Pinning API。于是基于这个 API,我们为 Planet 添加了第一个 Pinning 服务集成。

开始使用 Filebase

以下是启用 Filebase 来为 Planet 提供 Pinning 的步骤。

  1. 首先需要注册一个免费的 Filebase 账号。目前,免费账号可以获得 5GB 的 IPFS 存储空间。

  2. 点击 Filebase 主界面左侧的 Buckets,然后按 Create Bucket 创建一个新的存储桶。需要输入一个名字,比如 planet,然后下面 Storage Network 就保持默认的 IPFS (Always public)

filebase-create-bucket
  1. 创建 bucket 完成之后,点击左侧的 Access Keys,然后在 IPFS Pinning Service API Endpoint 那里选中刚才创建的 bucket,然后按下面的 Copy 就可以获得 Pinning API 的 API Token,是一串很长的字符串,请当作一种密码保管。
filebase-access-keys
  1. 回到想要启用 Pinning 的 My Planet,右键点击 Edit Planet,然后切换到 Pinning Tab,填入一个 Pin Name,比如 ENS 或者其他 URL 友好的名字。及刚才获得的 API Token。然后按下 OK 保存。
filebase-api-token
  1. 之后每次你的网站发布新内容时,就会通知 Filebase 也保存副本。目前 Filebase 会在 3 个不同的节点上保存内容。如果你 Edit Planet 然后切换到 Pinning Tab,还可以看到内容在 Filebase 上的状态:
  • Pinning - 内容正在被复制到 Filebase
  • Pinned - 内容已经完成复制
  • Queued - 正在排队等候
  • Unknown - 出错了,状态未知

如果出现 Unknown 状态,那么需要检查输入的 API Token 是否正确。可以从 Filebase 网站上重新复制之后重新在 Planet 里填入。

filebase-pinned

那个 Pinned 状态的按钮是可以按的,会打开 Pinned 内容在 Filebase 的 Gateway 上类似这样的地址:

https://ipfs.filebase.io/ipfs/bafybeihkepvteld5u7rmca6ud2cmi5pnpluwpvz6wtmnepmsmyner7xkq4/

内容成功 Pinned 之后,也可以在 Filebase 网站上看到状态:

filebase-status

Pinning 服务的集成,是一个很新也很复杂的功能,如果你在使用过程中遇到任何问题,欢迎加入 Planet 的 Telegram 群讨论或寻求开发者帮助:

https://t.me/+5bl7FIsxeChlOWIz