【Go 夜读】第 60 期 IPFS 星际文件系统

yangwen13 · · 586 次点击 · 开始浏览    置顶
这是一个创建于 的主题,其中的信息可能已经有所发展或是发生改变。

>文章来自于:https://reading.developerlearning.cn/reading/60-2019-09-19-ipfs-guide/ 分享者:xcshuan ## 观看视频 https://youtu.be/7xEWKaTE2TI ## Go 夜读第 60 期 IPFS 星际文件系统 ## 背景介绍 传统的 HTTP 都是通过资源定位符来定位,在服务器关闭后,有些数据可能会永远丢失,而且如果某客户离服务器比较远,则可能延时较高。IPFS 提出使用基于内容寻址,只要拥有 hash 且网络上有人存储此数据,即可获得数据,同时自带 CDN 效果(热数据会自动分散)。 ## 内容简介 主要介绍一下 ipfs 的基本思想与使用,并分析源码结构以及粗略介绍相关兄弟项目(如 multiformats,filecoin 等) ## 内容大纲 - IPFS 的底层技术原理。 - IPFS 源码概述。 - 超越 IPFS - 区块链存储简述。 - Q&A。 ## 分享地址 2019-09-19, 21:00 ~ 22:10, UTC+8 https://zoom.us/j/6923842137 ## 进一步阅读的材料 - [IPFS paper](https://github.com/ipfs/ipfs/tree/master/papers/ipfs-cap2pfs) - [源码](https://github.com/ipfs/go-ipfs) - [PPT](https://docs.google.com/presentation/d/13tYOTVMIT1fwkfZHwoe0qYUZMeYhQX9p_WiY5TOmbEY/edit?usp=sharing) - [预习资料](https://segmentfault.com/a/1190000020392149) 请点击:https://github.com/developer-learning/reading-go/issues/460 ## Q&A 总结 1. IPFS 是如何组网的? 答:IPFS 的底层网络库是 Libp2p,Libp2p 的路由算法是 S-KadDHT(分布式哈希表),只要能连接到网络中的几个节点,通过节点发现与交换,很容易就能进入到网络里,所以需要设置 bootstrap 节点作为连接种子。对于个人或公司想用 IPFS 组网,可以用 `swarm.key` 组建一个私网(需要指定一bootstrap),即可实现内部的 IPFS 网络。 2. IPFS 如何实现模糊搜索? 答:首先 IPFS 的 DAG 节点里面都是有一个 name 项,此外还有一些其他的信息可以解析,这样的话可以爬取这些元数据信息,用一些搜索引擎工具即可模糊搜索,开源实现:[https://github.com/ipfs-search/ipfs-search](https://github.com/ipfs-search/ipfs-search),可以用来当做参考。 3. IPFS 其他的相关资料。 中文资料,有一本《IPFS 原理与实践》,其次有一个 github 仓库:[https://github.com/xipfs/IPFS-Internals](https://github.com/xipfs/IPFS-Internals),还有 IPFS 的各种命令解释:[http://cw.hubwiz.com/card/c/ipfs/1/1/1/](http://cw.hubwiz.com/card/c/ipfs/1/1/1/) 英文首先有官方文档:[https://github.com/ipfs/specs](https://github.com/ipfs/specs),[https://github.com/filecoin-project/specs](https://github.com/filecoin-project/specs),一个教程:[https://flyingzumwalt.gitbooks.io/decentralized-web-primer](https://flyingzumwalt.gitbooks.io/decentralized-web-primer) 。 ---

有疑问加站长微信联系(非本文作者)

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

586 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传