1. Hi区块链首页
  2. 资讯
  3. 技术指南

​ 官方:js-libp2p 0.26.0 上线

感谢ChainSafe团队的出色工作,Gossipsub就在这里!Gossipsub是一个比Floodsub更高效的pubsub路由器。

Gossipsub支持和Promisify API

timg?image&quality=80&size=b9999_10000&sec=1565343231155&di=4115912a433928198b525a3468ddf645&imgtype=0&src=http%3A%2F%2Fimg.mp.sohu.com%2Fupload%2F20180607%2F036b8fa519e74d7cb444501b31677c23.jpg

亮点

Gossipsub

感谢ChainSafe团队的出色工作,Gossipsub就在这里!Gossipsub是一个比Floodsub更高效的pubsub路由器。广播到其所有对等体的广播,它广播到受控的对等体子集。要了解有关Gossipsub如何工作以及它与Floodsub的不同之处的更多信息,请查看规范。

如果您使用的是Pubsub,现在可以切换到使用Gossipsub而不是Floodsub。有老同行你需要淹没的东西?别担心,Gossipsub将自动回退到不支持它的同行的Floodsub。请参阅下面的API更改部分,了解如何将配置迁移到使用Gossipsub。

Promisify

当我们迁移到async / await时,我们正在宣传Libp2p的公共方法。目前,几个较低级别的库正在利用libp2p进行测试。通过宣传libp2p API,他们向完全异步/等待的过渡将有很大帮助。一旦async / await更改被传播,我们将在未来的更新中删除Promisify以及回调支持,因为libp2p将在那时具有完整的异步/等待支持。请参阅下面的API更改以查看重大更改。

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

API更改

突破性的变化

组态

切换选项

libp2p-switch的配置已更改。blacklistTTL和blackListAttempts分别更改为denyTTL和denyAttempts。您可以按如下方式设置:

const libp2p = new Libp2p({switch:{denyTTL:120e3,denyAttempts:5,} …})

发布订阅

订阅:为符合pubsub接口,libp2p.pubsub.subscribe的params顺序已重新排序。它们以前是主题,选项,处理程序,回调,现在是主题,处理程序,选项,回调。如果您的实现不使用选项,您应该可以忽略此更改。

配置:Pubsub以前是通过EXPERIMENTALconfig启用的。您现在必须指定pubsub实现(Gossipsub或Floodsub),并通过它自己的配置启用/禁用它。设置pubsub将自动启用它。您可以通过在配置中显式设置enabled为false来禁用它。

const libp2p = new Libp2p({modules:{pubsub:require(’libp2p-gossipsub’),…},config:{pubsub:{enabled:true},…} …})

Promisify

所有libp2p公共方法都已被实现,因此可以省略回调以支持基于promise的使用,包括async / await。例如,start可以用作:

libp2p.start(onStart)//或等待libp2p.start()

Gossipsub

Gossipsub已集成到现有的libp2p.pubsub API中。一旦Gossipsub作为pubsub实现提供,您就可以像之前使用的Floodsub一样使用它。有关pubsub配置更改,请参阅上面的部分。

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

️非常感谢所有使这个版本成为可能的人

按字母顺序排列,这里有38个人为这个版本贡献了429个贡献:

  • Abraham Elmahrek(1 PR,1期,2评论)

  • Alan Shaw(1条评论,6评论,5条评论)

  • Alex Potsides(1条评论,1评论)

  • Cayman(4个PR,2个问题,26评论,10条评论)

  • Cody Eilar(2期,4评论)

  • David Dias(6期,8条评论)

  • dirkmc(4条点评,1条点评)

  • FilipŠ(1 PR,1评论)

  • Gregory Markou(4条评论,18评论,17条评论)

  • hapsody(1条评论)

  • Henrique Dias(1期,1评论)

  • Hugo Dias(1条评论)

  • Isaac Jacobs(1期,7评论)

  • Jacob Heun(14个PR,3个问题,31评论,37条评论)

  • 雅各布(1 PR)

  • John_Suu(2条评论)

  • Jorropo(2 PRs)

  • 贾斯汀迈尔(1条评论)

  • kumavis(1条评论)

  • laubsauger(1期)

  • MaciejKrüger(2个PR,1期,2评论,20评论)

  • Marcin Rataj(1条评论)

  • MarinPetrunić(1个专家,5条评论,1个评论)

  • Michael FIG(1 PR)

  • Michiel De Backker(1条评论)

  • 迈克尔罗杰斯(1条评论)

  • Mikerah(2条评论信息,7评论,18条评论)

  • Nate Foss(1 PR,1期,2评论)

  • ohager(2条评论)

  • 帕特怀特(1评论)

  • Qmstream(2个PR,2个评论)

  • 劳尔·克里帕拉尼(1评论)

  • 理查德施耐德(1评论)

  • Saquib ul hassan(1期,1评论)

  • 史蒂芬艾伦(1 PR)

  • Tapasweni Pathak(1条评论,1条评论)

  • Vasco Santos(17个PR,4个问题,59评论,36条评论)

  • zthomas(1期)

640?wx_fmt=jpeg&tp=webp&wxfrom=5&wx_lazy=1&wx_co=1

想要贡献?

你想为libp2p项目做贡献而不知道怎么做?好吧,有几个地方你可以开始:

  • 检查libp2p repo中需要帮助标签的问题

  • 加入IPFS All Hands,自我介绍并告诉我们您想要贡献的地方 –  https://github.com/ipfs/team-mgmt#all-hands-call

  • 用IPFS攻击并告诉我们你做了什么!All Hands电话也是演示的完美场所,加入并向我们展示您的建设

  • 加入http://discuss.libp2p.io/的讨论,帮助用户找到答案。

  • 加入️Libp2p团队同步并成为Sprint行动的一部分!

你有问题吗?

关于libp2p的问题,它是如何工作以及你可以用它做什么的最好的地方是discuss.libp2p.io。我们也可以在Freenode的#libp2p频道上找到。

文章来源于网络,如有侵权请联系我们删除。

原文链接:https://blog.ipfs.io/2019-08-07-js-libp2p-0-26/

注:本文不作为投资理财建议,投资有风险,入市需谨慎。

来源:全球币码翁区块链研究院

本期编辑:Alice

声明:登载此文出于传递更多信息之目的,观点仅代表作者本人,绝不代表Hi区块链赞同其观点或证实其描述。
提示:投资有风险,入市须谨慎。本资讯不作为投资理财建议。