首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >洞察+评估gRPC消息流超级分类器结构

洞察+评估gRPC消息流超级分类器结构
EN

Stack Overflow用户
提问于 2020-06-14 08:32:46
回答 2查看 52关注 0票数 0

我想检查从调用智能契约到创建块之前的gRPC消息流:

我确实想检查这些步骤(使用的消息流),我后来发现这些步骤组成了一个完整的块(如果我理解它是对的,那么这些部分只会在块的末尾被组合在一起,一些人补充道):

调用链码的调用,例如在使用CLI:时将值"a“更改为"10”

代码语言:javascript
运行
复制
 1. CLI sends Proposal to Endorser -> [SignedProposal with Signature, Proposal:(Header+Payload)]

 2. Endorser sends Proposal Response back to CLI -> [ProposalResponse with its Endorsement,
    PropRespPayload] 

 3. CLI packs endorsements into Transaction + sends them to orderer for block creation

 4. Block is created by orderer + validation of sign.

取它们最快的方法是什么?

我所做的:

  1. (不是很好,很辛苦)尝试在处理gRPC的二进制文件中修改代码,重建图像:

我的问题是,我能够构建和修改二进制文件,比如对等可执行文件(它在图像中使用,并在码头容器中启动,就像对等程序一样),但是我最终想要使用它们,使我们成为像first-network这样的示例项目,在这里我可以调用一个事务并用自己的实现来记录gRPCed在哪里。我在这里可以做的,也是非常耗时的是重建所有图像,然后使所有示例文件适合新的环境,并实现这些部分,但我认为必须有一种更快的方法来评估消息流(使用完整的gRPC消息流/decoded的输出并编码)。

  1. (我认为目前最好的方法):我还没有发现更快的方法(这是新的方法和gRPC),而不是记录gRPC用wireshark发送的内容并尝试对其进行解码(但它并不适用于所有部分,因为消息不完整或害怕)。对于某些部分(证明符号),我有一些对象的编组版本是必要的。这实际上是我最需要的,因此我需要理解连接部分的gRPC内容:)

你对我有什么建议么?您想继续使用Way1还是Way2?还是我用一种太复杂的方法来解决这个问题?

有更快的方法存在吗?我的意思是,我需要解除封送的部分,但也需要一些对象的封送内容,并且我有proto文件(当这些是我在wireshark中调用时所做的日志记录部分的正确文件时)。

EN

回答 2

Stack Overflow用户

发布于 2020-06-16 01:34:55

您可以通过以下简单步骤创建自己的gRPC api:

  • 第一,你需要一个签名的建议。要制定一个签名的建议,您可以从代言人获得想法。
  • 要将签名的提案发送给对等方以供认可,您需要一个ProcessProposal gRPC调用,在那里您可以从对等方获得响应,还需要创建一个EndorserClient。
  • 在此之后,您需要从同龄人那里收集所有的背书,并必须制作签名信封。
  • 要制作一个签名的信封,可以从txutils.go文件中获得帮助
  • 要将签名的信封发送给订货人,您需要通过发送gRPC调用向订货人广播您的信封,在那里我们需要创建一个AtomicBroadcastClient。
票数 1
EN

Stack Overflow用户

发布于 2020-06-15 15:00:00

这似乎与一个多月前你发的问题密切相关。

正如您所指出的,如果您希望执行诸如验证签名之类的操作,您将需要消息的封送形式,但是如果您希望检查这些消息,则需要解除它们的封送。

我认为选项1(修改代码以转储所需的信息)仍然是最有用的。因为您可以在代码本身内执行任何序列化、持久性或分析。如果您只是通过类似于线鲨之类的东西将这些数据结构存储到磁盘中,那么您将需要跟踪它们,解析它们,等等,这对我来说似乎是更多的工作。

如果您已经在磁盘上封送消息,您可以尝试使用像configtxlator这样的工具将消息解封为更友好的JSON格式,如果您已经跟踪了适当的类型,尽管这似乎比简单地向我注入代码更困难。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/62370166

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档