The Libra Blockchain-开发者文档-(六)AC准入模块

2024-03-03 15:38

本文主要是介绍The Libra Blockchain-开发者文档-(六)AC准入模块,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

准入控制(AC)

准入控制(AC:Admission Control)是Libra的公共API接口,它用于接收来自客户端的公共gRPC请求。

概述

准入控制(AC)处理于来自客户的两种类型的请求:

  1. 提交交易 - 向关联的验证器提交交易。
  2. 更新最新分布式账本 - 查询存储,例如帐户状态,交易日志,验证等。

实施细节

准入控制(AC)实现两个公共API:

  1. 提交交易(提交交易请求)
    • 将对请求执行多次验证:
      • 首先检查交易签名。 如果此检查失败,AdmissionControlStatus::Rejected将返回给客户端。
      • 然后由vm_validator验证交易。 如果失败,则将相应的VMStatus返回给客户端。
    • 一旦交易通过所有验证,AC将从存储中查询发送人的帐户余额和最新序列号,并将其与客户端请求一起发送到内存池。
    • 如果内存池返回 MempoolAddTransactionStatus::Valid,则会将AdmissionControlStatu::Accepted 返回给客户端,表示提交成功。 否则,将相应的AdmissionControlStatus返回给客户端。
  2. 更新最新分布式账本(更新最新分布式账本请求). 在准入控制AC中不执行额外的处理。
  • 请求将直接传递到存储进行查询。

文件夹结构

    .├── README.md├── admission_control_proto│   └── src│       └── proto                           # Protobuf 定义文件└── admission_control_service└── src                                 # gRPC service source files├── admission_control_node.rs       # Wrapper to run AC in a separate thread├── admission_control_service.rs    # gRPC service and main logic├── main.rs                         # Main entry to run AC as a binary└── unit_tests                      # Tests

该模块与以下内容交互:

内存池组件,用于接收从客户端提交交易。 存储组件,用于查询验证器存储。

这篇关于The Libra Blockchain-开发者文档-(六)AC准入模块的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



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

相关文章

Python的time模块一些常用功能(各种与时间相关的函数)

《Python的time模块一些常用功能(各种与时间相关的函数)》Python的time模块提供了各种与时间相关的函数,包括获取当前时间、处理时间间隔、执行时间测量等,:本文主要介绍Python的... 目录1. 获取当前时间2. 时间格式化3. 延时执行4. 时间戳运算5. 计算代码执行时间6. 转换为指

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python中的getopt模块用法小结

《Python中的getopt模块用法小结》getopt.getopt()函数是Python中用于解析命令行参数的标准库函数,该函数可以从命令行中提取选项和参数,并对它们进行处理,本文详细介绍了Pyt... 目录getopt模块介绍getopt.getopt函数的介绍getopt模块的常用用法getopt模

使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)

《使用Python从PPT文档中提取图片和图片信息(如坐标、宽度和高度等)》PPT是一种高效的信息展示工具,广泛应用于教育、商务和设计等多个领域,PPT文档中常常包含丰富的图片内容,这些图片不仅提升了... 目录一、引言二、环境与工具三、python 提取PPT背景图片3.1 提取幻灯片背景图片3.2 提取

Android实现在线预览office文档的示例详解

《Android实现在线预览office文档的示例详解》在移动端展示在线Office文档(如Word、Excel、PPT)是一项常见需求,这篇文章为大家重点介绍了两种方案的实现方法,希望对大家有一定的... 目录一、项目概述二、相关技术知识三、实现思路3.1 方案一:WebView + Office Onl

Python实现word文档内容智能提取以及合成

《Python实现word文档内容智能提取以及合成》这篇文章主要为大家详细介绍了如何使用Python实现从10个左右的docx文档中抽取内容,再调整语言风格后生成新的文档,感兴趣的小伙伴可以了解一下... 目录核心思路技术路径实现步骤阶段一:准备工作阶段二:内容提取 (python 脚本)阶段三:语言风格调

使用Java将DOCX文档解析为Markdown文档的代码实现

《使用Java将DOCX文档解析为Markdown文档的代码实现》在现代文档处理中,Markdown(MD)因其简洁的语法和良好的可读性,逐渐成为开发者、技术写作者和内容创作者的首选格式,然而,许多文... 目录引言1. 工具和库介绍2. 安装依赖库3. 使用Apache POI解析DOCX文档4. 将解析

python logging模块详解及其日志定时清理方式

《pythonlogging模块详解及其日志定时清理方式》:本文主要介绍pythonlogging模块详解及其日志定时清理方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录python logging模块及日志定时清理1.创建logger对象2.logging.basicCo

Qt spdlog日志模块的使用详解

《Qtspdlog日志模块的使用详解》在Qt应用程序开发中,良好的日志系统至关重要,本文将介绍如何使用spdlog1.5.0创建满足以下要求的日志系统,感兴趣的朋友一起看看吧... 目录版本摘要例子logmanager.cpp文件main.cpp文件版本spdlog版本:1.5.0采用1.5.0版本主要

Java利用docx4j+Freemarker生成word文档

《Java利用docx4j+Freemarker生成word文档》这篇文章主要为大家详细介绍了Java如何利用docx4j+Freemarker生成word文档,文中的示例代码讲解详细,感兴趣的小伙伴... 目录技术方案maven依赖创建模板文件实现代码技术方案Java 1.8 + docx4j + Fr