Libp2p 简介
这是一个翻译的系列文章,原文参考:Introduction :: libp2p Documentation
欢迎来阅读libp2p相关文档,不论你是刚开始学习如何用libp2p来搭建P2P系统, 还是想潜心研究P2P相关概念和解决方案,亦或者是查阅相关的详细的参考信息,这里都是个很好的开始。
综述
libp2p是什么?( What is libp2p?) 这个章节介绍了libp2p的基本信息和目前已公布的问题的概要信息
教程
如果你想进一步研究libp2p,你可以查阅我们的教程( tutorials), 它可以成为你学习libp2p的指南。
实例
如果你是想知道libp2p是什么, 或者只是想看它如何使用,可以查阅实例(examples)。每一个libp2p的实现都是一组可工作的实例项目, 用于展现关键概念和用例。
参考
规范和规划
虽然libp2p有多种不同的实现,但是它基本上是一组用于对等点标识、发现、路由、传输等的协议。
详细信息可以阅读规范说明章节( specifications section)
实现
Libp2p的核心是一组规范集合( specifications), 这是规范组合在一起从抽象概念上定义了什么是libp2p 和怎么做才是libp2p的正确实现。现今libp2p有着几种不同编程语言的实现,并且每个都有着不同的完成度。由Go和JavaScript编写的完成度最高,另外用rust语言编写的也正在快速成熟。
除了上面已经提到的,libp2p社区也正在积极的用python来实现libp2p和用Kotlin实现JVM。请通过查看项目主页来获得每个项目实现的状态和完成状态。
社区
在 https://discuss.ipfs.io网站上,你可以联系在libp2p社区使用libp2p编写工具和应用程序的成员,可以向他们提相关问题,讨论新的想法或就某些问题获得支持等,并且你也可以到IRC(hop on IRC)进行快速交谈。
在社区章节可以看到更多的链接,通过这些链接可以查看更多的关于会议,事件,apps等的更多信息。
关于在这社区中对libp2p和其他软件项目做出贡献的信息也都可以在这查看到。
加入我们
Libp2p是一个社区开源项目。虽然协议实验室( Protocol Labs)能够赞助一些与其相关的工作,但是大部分工作,包括设计,编码,都是由像你这样的社区成员和志愿者来完成的。如果你有兴趣来帮助完善libp2p,可以先从阅读贡献指南(contributing )开始。
如果你想编写新的代码,请先阅读贡献指南(contribution guidelines)和代码风格说明书。
关联项目
Libp2p在开始的时候是IPFS项目的一部分, 也是IPFS项目的基本组件。因此,libp2p能够与IPFS家族的项目的抽象概念和工具完美的结合。你可以去查看他们各自的网站来获得更多信息。
IPFS 是星际文件系统, 是使用libp2p作为它的网络层。
Multiformats是各种自描述数据格式系统
IPLD 是一系列用于描述地址-内容链接的工具,比如IPFS 文件, Git commits, or Ethereum blocks.
The Permissive License Stack 是一个为软件开发提供特许策略的工具,这个非常适合开源项目。
Libp2p 简介的更多相关文章
- ASP.NET Core 1.1 简介
ASP.NET Core 1.1 于2016年11月16日发布.这个版本包括许多伟大的新功能以及许多错误修复和一般的增强.这个版本包含了多个新的中间件组件.针对Windows的WebListener服 ...
- MVVM模式和在WPF中的实现(一)MVVM模式简介
MVVM模式解析和在WPF中的实现(一) MVVM模式简介 系列目录: MVVM模式解析和在WPF中的实现(一)MVVM模式简介 MVVM模式解析和在WPF中的实现(二)数据绑定 MVVM模式解析和在 ...
- Cassandra简介
在前面的一篇文章<图形数据库Neo4J简介>中,我们介绍了一种非常流行的图形数据库Neo4J的使用方法.而在本文中,我们将对另外一种类型的NoSQL数据库——Cassandra进行简单地介 ...
- REST简介
一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...
- Microservice架构模式简介
在2014年,Sam Newman,Martin Fowler在ThoughtWorks的一位同事,出版了一本新书<Building Microservices>.该书描述了如何按照Mic ...
- const,static,extern 简介
const,static,extern 简介 一.const与宏的区别: const简介:之前常用的字符串常量,一般是抽成宏,但是苹果不推荐我们抽成宏,推荐我们使用const常量. 执行时刻:宏是预编 ...
- HTTPS简介
一.简单总结 1.HTTPS概念总结 HTTPS 就是对HTTP进行了TLS或SSL加密. 应用层的HTTP协议通过传输层的TCP协议来传输,HTTPS 在 HTTP和 TCP中间加了一层TLS/SS ...
- 【Machine Learning】机器学习及其基础概念简介
机器学习及其基础概念简介 作者:白宁超 2016年12月23日21:24:51 摘要:随着机器学习和深度学习的热潮,各种图书层出不穷.然而多数是基础理论知识介绍,缺乏实现的深入理解.本系列文章是作者结 ...
- Cesium简介以及离线部署运行
Cesium简介 cesium是国外一个基于JavaScript编写的使用WebGL的地图引擎,一款开源3DGIS的js库.cesium支持3D,2D,2.5D形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- 应对告警风暴,Cloud Alert 实现告警风暴智能降噪
前言 睿象云前段时间发表了一篇< Zabbix 实现电话.邮件.微信告警通知的实践分享>的技术文章.它帮助我们非常轻松地支持了各种告警通知方式,但是存在一个严重的问题,我们经常接到各种相类 ...
- nginx&http 第三章 ngx HTTP 请求的 11 个处理阶段
nginx 将一个 HTTP 请求分为 11 个处理阶段,这样做让每一个 HTTP 模块可以仅仅专注于完成一个独立.简单的功能,而一个请求的完整处理过程可以由多个 HTTP 模块共同合作完成将一次 H ...
- MYSQL 存储引擎(面)
存储引擎是MySQL的组件,用于处理不同表类型的SQL操作.不同的存储引擎提供不同的存储机制.索引技巧.锁定水平等功能,使用不同的存储引擎,还可以获得特定的功能. 使用哪一种引擎可以灵活选择,一个数据 ...
- mysql数据库新增、修改、删除字段和修改表名
Mysql 删除,添加或修改表字段 删除 ALTER TABLE testalter_tbl DROP i; 新增 ALTER TABLE testalter_tbl ADD i INT; 指定位置新 ...
- HotSpot类模型之InstanceKlass
上一篇 HotSpot源码分析之类模型 介绍了类模型的基础类Klass的重要属性及方法,这一篇介绍一下InstanceKlass及InstanceKlass的子类. 1.InstanceKlass类 ...
- SQL Server DATEDIFF() 函数用法
定义和用法 DATEDIFF() 函数返回两个日期之间的时间,例如计算年龄大小. DATEDIFF(datepart,startdate,enddate)startdate 和 enddate 参数是 ...
- TypeScript 引入第三方包,报无法找到模块错误
以 react-router-dom 模块为例 1. npm加上 @types/ 根据报错提示尝试安装该库的TypeScript版本 (该库的 ts 声明文件),也就是在该库的名称前加上 @types ...
- Codeforces Round #674 (Div. 3)
A 除一下就完了. 时间复杂度 \(O\left(t\right)\). B 分在对称线上的矩阵和不在对称线上的矩阵讨论. 时间复杂度 \(O\left(tn^2\right)\). C 肯定是先增加 ...
- Eclipse中自动生成局部变量
方法调用后,返回值自动赋值到一个新的局部变量中: (1)鼠标放到方法上,点击Ctrl+1 (2)选择 :Assign statement to new local variable(将语句赋给新的局部 ...
- 移动端和web端的性能指标
移动端的性能指标: 1.内存:80% 2.CPU 3.流量 4.电量 5.启动速度 6.滑动速度.界面切换速度 7.与服务器交互的网络速度 web端的性能指标: 1.CPU 2.内存 3.网络 4.I ...