BLO:ABT Node v1.2.0 正式发布_TNODE价格

作者:?王仕军

在经历239个Commit,17个小版本迭代之后,功能更强大、性能更稳定、更安全可靠、用户体验更好的ABTNodev1.2.0正式发布了,欢迎大家升级试用!

如果你之前启动过ABTNode,可以直接在ABTNode的配置界面检查升级即可体验最新版。

可能你会好奇,ABTNodev1.2.0都包含了哪些特性?哪些改进?下面我们列出主要的变化和改进。

BreakingChanges

ABTNodev1.2.0里面包含了下面的BreakingChange

@abtnode/cli?安装后会产生两个全局的命令行工具?abtnode?和?blocklet,前者用来管理ABTNode,后者用来操作Blocklet

abtnodedeploy?变成了?blockletdeploy

abtnodebundle?变成了?blockletbundle

abtnodeblocklet:*?变成了?blocklet*

ABTNode默认的BlockletRegistry变更为?https://booster.registry.arcblock.io?新Registry启用了AWS的全球CDN加速,下载速度会更快

BlockletRegistry

为了更好的Blocklet开发工作流,我们设计和开发了去中心化的BlockletRegistry,所有的官方Blocklet目前都发布到我们官方的BlockletRegistry。新的BlockletRegistry已经具备如下的能力:

验证Blocklet的元信息、发布版本信息、开发者信息、源代码压缩包

存储并以API的形式提供自己Host的所有Blocklet信息,方便ABTNode检索和安装

接下来我们会继续迭代BlockletRegistry,使其支持经济模型里面的利益分配、支持BlockletRegistry之间的Push和Pull。

团队管理模块

新版的ABTNode包含了更加完善且通用的团队管理功能:

邀请其他用户加入,只需要创建邀请链接,受邀者通过ABTWallet即可加入

更加细粒度的成员管理功能,比如禁用、启用、更改角色,登录时间记录

Blocklet享有和ABTNode完全相同但数据隔离的团队管理,无需自行开发

权限管理模块

在团队管理的基础上我们还增加了基于角色的权限控制,来提高ABTNode的安全性,这非常适合于需要多人来管理和运维一个ABTNode的情形。

当然,这个功能对于Blocklet来说也是通用的,即运行在ABTNode里面的Blocklet天然就有了自己的权限控制模块。

ABTNode的默认权限和安全策略如下图:

Blocklet服务

在团队管理和权限管理的基础上,我们开发了第一个Blocklet服务:用户认证和鉴权服务,省去开发Blocklet过程中需要考虑的用户登录、授权等重复性的工作,这个功能包含两部分:

用户认证:通过DID登录来验证用户身份,不同Blocklet的用户数据完全隔离,并且能通过团队功能来管理Blocklet自己的用户

用户鉴权:通过权限控制模块来管理用户权限,验证用户的权限,实现比较安全的访问控制

当然,对所有的新功能我们都会吃自己的狗粮,目前官方Blocklet中需要登录和鉴权的已经全部切换到为ABTNode提供的服务。

启用了Auth服务的Blocklet安装后会是下面的样子:

如果你想亲自体验启用了Auth服务的Blocklet,可以安装?AuthDemo?或者?KitchenSink,如果你想在自己的Blocklet中使用Auth服务,敬请期待即将发布的文档。

接下来我们会设计并提供更多的Blocklet服务来简化Blocklet的开发,让ABTNode成为真正意义上的DApp操作系统。

其他值得注意的改进

除了上面列出来的大块功能之外,下面这些小改进也值得关注和尝试:

WEBWallet支持:新版的ABTNode能无缝的和?ABTWalletWeb?版本一起工作,包括声明节点、登录

支持从文件系统安装Blocklet:作为从BlockletRegistry安装补充,从URL安装的功能目前支持?http/https/file?三种协议

支持取消等待中的安装任务:之前的版本只能取消下载中的安装

动态调整的安装和启动队列并发数:新版ABTNode会根据宿主机的性能动态调整Blocklet安装和启动两个任务队列的并发数

支持BlockletRequirements:开发者在?blocklet.yml?中可以声明Blocklet的运行环境,比如ABTNode的版本、操作系统、CPU架构

支持查看RoutingEngine的日志:方便查看经由路由引擎的流量、日志

软件质量提升

从技术预览版到v1.2.0,ABTNode已经演化成包括11W+行代码、20+子模块的项目,sloc?的统计结果如下:

为了确保ABTNode的可靠和稳定,我们在CI流程里面增加了代码覆盖率统计,要求每个PR不管新增还是重构不能降低整体的代码覆盖率,在两个月的时间内,整个项目的代码覆盖率从25.2%提升到61.1%,且还在持续改进。

下面是CodeCov的最近90天的覆盖率变化趋势:

此外,为了提高工程师的效率,我们的CI流程全面从Travis切换到了GithubActions,因为后者有更快的执行速度。

欢迎试用反馈

以上,欢迎试用新版,并到这里给我们提建议!

来源:金色财经

郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。

区块博客

[0:15ms0-3:602ms