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形式的地图展示,可以自行绘制图形,高亮区 ...
随机推荐
- linux利用screen进行shell下的屏幕协作
我们都知道linux是支持多终端并行处理的 但是某些时候我们可能有比较特殊的需求需要两个人同时处理一个终端,screen 正好能满足这个要求 首先需要安装screen软件: debian和ubuntu ...
- linux系统中重启网卡后网络不通(NetworkManager篇)
一.故障现象 RHEL7.6系统,使用nmcli绑定双网卡后,再使用以下命令重启network服务后主机网络异常,导致无法通过ssh远程登录系统. # systemctl restart networ ...
- LeetCode-Python-删除链表解题思路
给定一个链表,删除链表的倒数第 n 个节点,并且返回链表的头结点. image.png 解题思路: 使用双指针,快指针与慢指针的间隔为n: 涉及到最后要删除慢指针的节点,为了方便,先开辟一个nod ...
- Java(7)泛型
目录 一.泛型概述 1.什么是泛型 2.为什么用泛型 3.在集合中使用泛型 二.自定义泛型结构 1.泛型类.接口 2.泛型方法 三.举例泛型类和泛型方法的使用场景 1.泛型类举例: 2.泛型方法举例 ...
- HDU100题简要题解(2010~2019)
HDU2010 水仙花数 题目链接 Problem Description 春天是鲜花的季节,水仙花就是其中最迷人的代表,数学上有个水仙花数,他是这样定义的: "水仙花数"是指一个 ...
- 网络拓扑实例之VRRP负载分担(四)
组网图形 VRRP负载分担简介 负载分担方式是指多台设备同时承担业务,因此负载分担方式需要两个或者两个以上的虚拟路由器,每个虚拟路由器都包括一个Master路由器和若干个Backup路由器,各虚拟路 ...
- 前后端分离中,使用swagger2和WireMock提高开发速度
一.使用swagger2生成接口文档 依赖 <dependency> <groupId>io.springfox</groupId> <artifactId& ...
- zabbix的搭建及操作(1)server-client架构
实验环境 Server端 Centos7:192.168.10.10 server.zabbix.com 可连外网 Agent 端 Centos7:192.168.10.20 ...
- guitar pro系列教程(八):Guitar Pro编写使用的快捷符号
上一节我们一起讨论了Guitar Pro的乐谱音乐符号的添加,在我们使用Guitar Pro写谱的时候,输入乐谱用鼠标点击是不是很麻烦而且又浪费时间呢,效果还不一定好,但是如果让我们结合键盘是不是就会 ...
- web自动化测试难点 滚动条操作、日期框处理、上传文件
如何把页面滑到最低部? 一般来说,做web自动化测试时,不需要单独写代码,把页面滑到可见,因为click操作,只要是元素存在并且加载出来了,就可以点击到,无需另外写滑动元素的代码. 如果特殊情况需要滑 ...