Git Product home page Git Product logo

Comments (18)

jixingwei avatar jixingwei commented on August 16, 2024

方案说明:

  1. 在chain33/system/里增加randnum模块,由base实现基本的消息处理,这里randnum只处理一种消息,请求随机数HASH消息,分发给child处理
  2. 在plugin/里增加randnum模块,ticket/dpos等作为randnum的child,以ticket为例,实现从区块中获取ticket交易,并根据规则生成一个Hash返回给请求者,兼容主链和平行链的请求,对于主链,直接根据请求者提供的高度来获取区块计算,对于平行链,根据请求者提供的交易HASH,获取主链对应高度,再进行计算

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

我觉得没有必要这样处理,dapp/ticket 模块中增加一个接口: GetRandHash 就可以了。

from chain33.

jixingwei avatar jixingwei commented on August 16, 2024

就是其他的dapp,直接到ticket这里来请求吗

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

先简单一点处理把。后面其他的比如tendermint 也要加,也可以在他的dapp query 里面增加一个相同的接口。而用户配置一下 执行器的名称就可以了。

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

统一 通过 Query 接口处理。

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

client.Query

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

用client 包。

from chain33.

jixingwei avatar jixingwei commented on August 16, 2024

这个Query实际由谁来相应呢

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

Query 已经有了。。

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

image

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

通过这个接口,可以在同一条链中调用,如果是平行链,那么用rpc 接口来调用

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

rpc接口调用主链

from chain33.

jixingwei avatar jixingwei commented on August 16, 2024

通过Query接口,发消息给ticket执行器,让ticket来进行实际逻辑计算,然后返回给调用者?

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

是的,这样可以吗?

from chain33.

jixingwei avatar jixingwei commented on August 16, 2024

我想一下,应该可以实现

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

平行链的调用主链随机数,可能只能用rpc 接口来做。这个可靠行上会差一些,后面我们再来研究进一步的方案。先实现一个简单的版本

from chain33.

jixingwei avatar jixingwei commented on August 16, 2024

@vipwzw 直接放到ticket的Query接口,在调试的时候遇到一个问题。由于需要获取最近几个区块信息,在尝试调用ticket.GetApi().GetBlocks(req)时发现,对于Query接口,driverbase没有设置过env,这个api是空的。

from chain33.

vipwzw avatar vipwzw commented on August 16, 2024

@jixingwei 先修复 driverbase env 的问题。设置一下 API

from chain33.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.