织梦CMS - 轻松建站从此开始!

我的网站

当前位置: 主页 > 区块链

如何在IPFS中尽快地搜索到内容_Filecoin社区_火星财经(2)

时间:2022-03-07 17:16来源:未知 作者:admin 点击:
将上例中的“multiAddress”用节点B的IPv6 “multiAddress”替换。 运行完命令后,我们会得到下列结果: conect NodeBID success 我们可以用下列命令测试一下看这些

  将上例中的“multiAddress”用节点B的IPv6 “multiAddress”替换。

  运行完命令后,我们会得到下列结果:

  conect NodeBID success

  我们可以用下列命令测试一下看这些节点是否已经互联了:

  ipfs swarm peers

  在节点A上,你现在应该能在返回的结果中看到节点B的“multiAddress”;同理在节点B上,你应该能在返回的结果中看到节点A的“multiAddress”。

  现在节点A和节点B已经互联了。假如A搜索的内容就在B上,那么搜索就应该很快,而不再像普通IPFS那样通过一堆节点的中介才能搜索到内容。这是节点A搜索内容时,节点B将会是第一个被查询的对象。

  第三步:让运行自动化

  前面我们的操作都是在命令行手动输入指令实现的,有没办法让这些自动执行从而使节点之间永远互联呢?

  我们可以用Linux服务中的计时器达到这个目标。

  这里我们假设我们有一个网关节点,我们希望我们所有的IPFS节点都自动连接到这个网关。对每一个希望直接连接网关的节点,我们在该节点上添加下列两个文件:

  第一个文件是:/ETC/systemd/system/gateway-conector.service

  其内容如下:

  [Unit]Description=JOB that periodically conects this IPFS node to the gateway node[Service]ExecStart=/home/yourUserName/go/BIN/ipfs swarm conect /ip4/GGG.GGG.GGG.GGG/tcp/4001/ipfs/gatewayIDEnvironment=IPFS_PATH=/ipfs

  注意:在上述文件中,有几个值要替换成你自己的值。

  在ExecStart中,你IPFS的执行路径要替换成你安装“Go/” IPFS可执行文件的路径。

  在ExecStart中,“multiAddress”要替换成你在网关上运行“ipfs id”得到的返回值。这里也可以用IPv6的multiAddress。

  在Environment中,你要用你安装IPFS repo的路径替换。你执行“ipfs repo stat”后会得到一个返回值“RepoPath”,就是这个值。

  第二个文件是:/etc/systemd/system/gateway-conector.timer

  [Unit]Description=Timer that periodically triggers gateway-conector.service

  [Timer]OnBootSec=3minOnUnitActiveSec=1min

  [Install]WantedBy=timers.target

  在上述文件中,“OnBootSec”是你的机器在启动后要等待多久才启动计时器的时间设定。“OnUnitActiveSec”是每一个“gateway-conector.service”执行后下一个“gateway-conector.service”执行之前要等待的时间。

  第四步:自动化运行

  现在我们创建自动化文件,并运行它们。

  在每个节点的命令行,加入我们上面罗列的两个文件,并运行下列命令:

  sudo systemctl enable gateway-conector.timer

  sudo systemctl start gateway-conector.timer

  为了验证我们加入的文件是否有效,运行下列命令: (责任编辑:admin)

织梦二维码生成器
顶一下
(0)
0%
踩一下
(0)
0%
------分隔线----------------------------
发表评论
请自觉遵守互联网相关的政策法规,严禁发布色情、暴力、反动的言论。
评价:
表情:
用户名: 验证码:点击我更换图片
栏目列表
推荐内容