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

news2024/11/15 21:23:46

请添加图片描述
​​发表时间: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区块链

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2110879.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

魔珐科技受邀参与外滩大会:以3D数字人AIGC产品赋能大资管行业,重塑金融服务边界

在人工智能浪潮的推动下,金融行业正经历着前所未有的场景革命。2024年Inclusion外滩大会作为行业交流的盛会,汇聚了众多学者、专家及企业领袖,共同探讨AI技术在多领域的深度应用,特别是其在金融行业中的革新潜力。 在外滩大会上&…

在桌面商业分析应用程序中启用高级 Web UI

挑战 Mercur Business Control 应用程序在企业界,尤其是金融领域,拥有悠久的应用历史。它帮助企业处理、可视化和分析海量数据,从而做出明智的商业决策。 随着产品的不断演进和现代化,Mercur Solutions AB 为该应用创建了 Web 客…

使用RestTemplate获取国内大盘股票数据的基本信息并存入数据库中

目录 使用RestTemplate获取国内大盘股票数据的基本信息并存入数据库中 第一步:导入RestTemplate依赖,并配置RestTemplate让其加入到SpringIoC容器中 第二步:在yml文件定义股票的相关参数 第三步:向新浪网发送请求,获…

FP7195:非同步升压恒流LED区动IC

前言:LED驱动芯片是什么? LED驱动芯片是一种能够将电源的电压和电流转换为适合LED(发光二极管)使用的电压和电流的芯片。这种芯片的主要作用是控制LED的亮度和电流,从而保证LED的正常工作和长寿命。简单来说&#xff…

【C++二分查找】1802. 有界数组中指定下标处的最大值

本文涉及的基础知识点 C二分查找 LeetCode 1802. 有界数组中指定下标处的最大值 给你三个正整数 n、index 和 maxSum 。你需要构造一个同时满足下述所有条件的数组 nums(下标 从 0 开始 计数): nums.length n nums[i] 是 正整数 &#xf…

Vue组件:使用$emit()方法监听子组件事件

1、监听自定义事件 父组件通过使用 Prop 为子组件传递数据,但如果子组件要把数据传递回去,就需要使用自定义事件来实现。父组件可以通过 v-on 指令(简写形式“”)监听子组件实例的自定义事件,而子组件可以通过调用内建…

Ollama Qwen2 支持 Function Calling

默认 Ollama 中的 Qwen2 模型不支持 Function Calling,使用默认 Qwen2,Ollama 会报错。本文将根据官方模板对 ChatTemplate 进行改进,使得Qwen2 支持 Tools,支持函数调用。 Ollama 会检查对话模板中是否存在 Tools,如…

wlanapi.dll丢失怎么办?有没有什么靠谱的修复wlanapi.dll方法

在遇到各种系统文件错误当中,其中之一就是“wlanapi.dll文件丢失”的问题。这种问题通常发生在Windows操作系统上,特别是当系统试图执行与无线网络相关的任务时。wlanapi.dll是一个重要的系统文件,它负责处理Windows无线网络服务的许多功能。…

一种非接触式智能垃圾桶设计(论文+源码+实物)

1系统方案设计 通过对需求展开分析,本设计非接触式智能垃圾桶采用STM32F103单片机作为控制器,通过红外传感器实现垃圾桶的满溢检测,通过三个SG90舵机分别控制可回收、不可回收、其他垃圾桶盖的开关,并通过WiFi通信模块将数据信息…

Windows编译Hikari-LLVM15[llvm-18.1.8rel]并集成到Android Studio NDK

Windows编译Hikari-LLVM15[llvm-18.1.8rel]并集成到Android Studio NDK 工具1、w64devkit2、ndk3、cmake 编译1、准备工作2、开始编译 集成1、替换文件2、使用 工具 1、w64devkit w64devkit 解压出来给个环境变量 验证一下 2、ndk 通过android studio安装 ndk\27.1.1229…

PaddleOCR基础入门

1、下载paddle源码 https://github.com/PaddlePaddle/PaddleOCR2、新建conda虚拟环境 conda create --name paddleocr_env python3.103、激活conda虚拟环境 conda activate paddleocr_env4、解压paddleOCR并进入ocr目录,运行安装所需库: pip install…

包拯断案 | 数据库从库GTID在变化 为何没有数据写入@还故障一个真相

提问:作为DBA运维的你是否遇到过这些烦恼 1、数据库从库复制链路如何正确配置表过滤信息? 2、数据库从库的GTID在变化,实际却没有数据写入,究竟是什么原因? 心中有章,遇事不慌 作为DBA的你,…

KCP实现原理探析

KCP 是一个轻量级的、高效的、面向 UDP 的传输协议库,专为需要低延迟和高可靠性的实时应用设计。本文针对 KCP 的主要机制和实现与原理进行分析。 1. 术语 术语 全称 说明 TCP Transmission Control Protocol 传输控制协议 RTT Round Trip Time 往返时延 …

SQL Server导入导出

SQL Server导入导出 导出导入 这里已经安装好了SQL Server,也已经创建了数据库和表。现在想导出来给别人使用,所以需要导入导出功能。环境:SQL Server 2012 SP4 如果没有安装,可以查看安装教程: Microsoft SQL Server …

远程控制不止向日葵,这四款工具千万别错过!

不管是什么职业,总有些朋友会需要远程控制电脑,无论是从家里连接到办公室的机器,还是在出差时需要紧急访问我的开发环境。今天,我想和大家分享一下我使用过的几款远程控制软件它们在实际使用中的表现如何。 一、向日葵 网址&…

Arcgis字段计算器:随机生成规定范围内的数字

选择字段计算器在显示的字段计算器对话框内,解析程序选择Python,勾选上显示代码块, 半部分输入: import random; 可修改下半部分输入: random.randrange(3, 28) 表示生成3-28之间的随机数 字段计算器设置点击确定…

【springboot】使用缓存

目录 1. 添加依赖 2. 配置缓存 3. 使用EnableCaching注解开启缓存 4. 使用注解 1. 配置缓存名称 2. 配置缓存的键 3. 移除缓存 5. 运行结果 1. 添加依赖 <!-- springboot缓存--><dependency><groupId>org.springframework.boot</groupId>…

前端发送邮件至指定邮箱的方式方法有哪些?

前端发送邮件的教程指南&#xff1f;前端静态页面怎么发送邮件&#xff1f; 无论是用户反馈、订阅通知还是其他形式的通信&#xff0c;前端发送邮件的功能都显得尤为重要。AokSend将详细介绍几种常见的前端发送邮件的方法&#xff0c;帮助开发者更好地实现这一功能。 前端发送…

防患于未然,智能监控新视角:EasyCVR视频平台在高校安全防控中的关键角色

有网民发视频称&#xff0c;某大学食堂内发生争执打斗事件。一男一女两名学生疑似因座位问题发生争执&#xff0c;女子被打倒在地。此事引发网友关注。高校食堂作为师生日常用餐的聚集地&#xff0c;人员密集且流动性大&#xff0c;极易因排队、价格、口味等问题引发争执&#…

17、信贷业务管理|为什么说贷款用途是贷款反复发生风险的重要根源?

国家金融监管总局&#xff1a;小额贷款公司应当与借款人明确约定贷款用途&#xff01; 8月23日&#xff0c;为规范小额贷款公司行为&#xff0c;加强监督管理&#xff0c;促进小额贷款公司稳健经营、健康发展&#xff0c;国家金融监督管理总局研究制定了《小额贷款公司监督管理…