区块链ARC如何能让节点能够大规模处理交易数据

2024-09-06 18:36

本文主要是介绍区块链ARC如何能让节点能够大规模处理交易数据,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

请添加图片描述
​​发表时间:2024年8月7日


TAAL技术主管Michael Böckli表示,TAAL公司一直在对ARC进行测试,并准备在今年年底全面发布。因TAAL在区块链交易处理方面具备深厚的专业知识,BSV区块链委托TAAL进行ARC开源参考落地方案的开发。
ARC是一个多层交易处理系统,能够追踪交易在BSV区块链上的整个生命周期。

除了遵循BSV区块链的开源指南和要求开发ARC的开源版本之外,TAAL还开发了一个商业版本的ARC,并将其作为一项适合商业和企业级应用的服务向企业推广。

在2024年伦敦区块链大会上,Böckli提到ARC的开发过程已经进行了一年多。他指出,ARC最初是为了取代mAPI,但现在已经发展成为一个更加全面的工具。

Böckli指出:“ARC的运作方式有点像一个独立的节点,而不仅仅是一个向节点发起远程过程调用(RPC)的程序。它已经为即将到来的Teranode时代做好了准备。然而,在我们达到那个阶段之前,ARC还需要进一步的调整和更广泛的开发。

ARC将可能成为覆盖网络中的一个节点,任何人都可以使用和运行。ARC的设计和功能使其能够适应并被集成到这个网络中,作为一个功能性的节点存在。”

除了标准的ARC实现方案之外,ARC还可能会有根据特定需求定制的版本。这些定制版本可能会添加或修改某些功能,以更好地服务于特定的业务场景或行业需求。ARC本质上是这类组件的参考标准。作为一个开源项目,ARC为其他开发者提供了一个基础框架和标准,使他们可以基于这个标准来创建自己的应用方案,无论是保持原有功能还是进行定制化开发。

这个观点引发了关于开源和商业应用之间的讨论。Böckli指出,尽管TAAL正在积极进行ARC的整体开发,但也在努力改进对ARC系统运行状态的跟踪、观察和管理的监控技术,以便更有效地维护和优化ARC系统。他提到,TAAL可能会开发一些非开源的功能优化,这些优化可能涉及到更高级的监控技术或专注于商业版本的功能增强,以提供额外价值,区分开源版本和商业版本,满足不同用户群体的需求。

“这并不表示开源版本的开发会中断。”Böckli强调自己和团队正全力以赴,确保在今年年底的Teranode升级中,ARC能够成功部署。

快速了解什么是ARC

ARC是一个区块链上的多层交易处理系统,能够追踪交易在BSV区块链上的整个生命周期。

与传统的交易处理器不同,ARC通过点对点(P2P)网络广播所有交易,并不依赖于单一节点的远程过程调用(RPC)接口。这种设计让ARC能够与任意数量的节点建立连接并进行广播,满足用户对连接和广播到的节点数量的需求。

未来,ARC将能够利用IPv6多播技术发送交易,这将让它在不产生大量带宽成本的情况下连接到众多节点。

ARC的设计将交易处理器的核心功能解耦,并将其封装成能够灵活进行水平扩展的微服务。在可能的情况下,这些微服务之间的交互通过异步消息传递来实现解耦。

ARC由几个关键的微服务组成,包括API服务器、验证器(具备根据工作量增加而进行扩展的能力)、用于管理交易状态变化的变形服务,以及处理连接的对等体管理器。此外,ARC采用了一种新的区块存储格式,它只包含交易ID而不是完整的交易数据。这种架构旨在提高BSV区块链网络中的交易可靠性和效率。

ARC的四个微服务包括:API、Metamorph、BlockTX和Callbacker。

ARC API: API作为与ARC系统交互的接口,具有几个关键的端点。包括设置政策要求的端点,如每字节的挖矿费用,以及用于并行或串行处理交易的交易提交端点。交易通过一种“扩展格式”提交,这不仅包含了必要的基础信息,还额外包括了用于脚本验证和费用核算的数据,有效解决了仅使用原始交易数据时可能遇到的问题。为了在广播之前确保交易的准确性,这种格式需要依赖一个正在开发中的UTXO查找服务。这项服务的引入,将大幅提升交易的可靠性。

Metamorph: Metamorph的角色是通过点对点网络将预先验证的交易放置在区块链上。它可以连接到多个实例,使用轮询负载平衡来处理高交易量。Metamorph从API接收并处理交易,监控它们的状态,并根据需要转发更新。

BlockTx: BlockTx是一个监听点对点消息,特别是区块公告的微服务。在检测到区块公告后,BlockTx就会提取并处理关键数据,确认交易ID是否嵌入了区块头部的默克尔根中。它将交易进行哈希处理,生成交易ID列表,并为这些ID计算出相应的默克尔路径。随后,BlockTx会将这些交易的状态标记为“已挖矿”,并按照BRC 71标准来存储这些路径信息。

**Callbacker:**Callbacker服务让用户能够追踪他们交易的实时状态。用户可以通过API的“get tx”接口查询交易状态,并选择他们希望接收的更新类型。用户只需提供一个网址和Token,就可以在交易状态发生变化时,比如挖掘状态更新或默克尔路径数据变化时,接收到通知。

更多关于ARC的信息请看:

https://www.bsvblockchain.org/news/bsv-blockchain-launches-arc-v1


目前,全球已有超过400个项目构建于BSV区块链之上。凭借坚如磐石的协议及超高的网络性能,BSV生态系统迅猛发展,我们期待未来出现更多前所未有的商业应用。

  • 对BSV区块链开发感兴趣的朋友,可以前往我们的中文开发者专区:BSV区块链

这篇关于区块链ARC如何能让节点能够大规模处理交易数据的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1142799

相关文章

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

Golang 日志处理和正则处理的操作方法

《Golang日志处理和正则处理的操作方法》:本文主要介绍Golang日志处理和正则处理的操作方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考... 目录1、logx日志处理1.1、logx简介1.2、日志初始化与配置1.3、常用方法1.4、配合defer

springboot加载不到nacos配置中心的配置问题处理

《springboot加载不到nacos配置中心的配置问题处理》:本文主要介绍springboot加载不到nacos配置中心的配置问题处理,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑... 目录springboot加载不到nacos配置中心的配置两种可能Spring Boot 版本Nacos

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

pandas实现数据concat拼接的示例代码

《pandas实现数据concat拼接的示例代码》pandas.concat用于合并DataFrame或Series,本文主要介绍了pandas实现数据concat拼接的示例代码,具有一定的参考价值,... 目录语法示例:使用pandas.concat合并数据默认的concat:参数axis=0,join=

C#代码实现解析WTGPS和BD数据

《C#代码实现解析WTGPS和BD数据》在现代的导航与定位应用中,准确解析GPS和北斗(BD)等卫星定位数据至关重要,本文将使用C#语言实现解析WTGPS和BD数据,需要的可以了解下... 目录一、代码结构概览1. 核心解析方法2. 位置信息解析3. 经纬度转换方法4. 日期和时间戳解析5. 辅助方法二、L

使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)

《使用Python和Matplotlib实现可视化字体轮廓(从路径数据到矢量图形)》字体设计和矢量图形处理是编程中一个有趣且实用的领域,通过Python的matplotlib库,我们可以轻松将字体轮廓... 目录背景知识字体轮廓的表示实现步骤1. 安装依赖库2. 准备数据3. 解析路径指令4. 绘制图形关键

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock