您现在的位置是:首页 > 文章详情

《区块链DAPP开发入门、代码实现、场景应用》笔记1——天外飞仙DAPP

日期:2019-10-22点击:407

图1.15展示了一个DAPP的全景图,该系统架构图包含了从用户通过可视化界面发起操作到以太坊状态机发生改变的全流程。首先用户通过Web界面或者手机APP,将操作数据发送到一个传统的业务服务器,该业务服务器是传统互联网中心化的服务器,但是与传统系统不同的是,该系统没有像传统互联网设计那样将数据放入中心化的数据库存储,而是通过一个Web 3.0接口,将数据传送到了以太坊区公链。

1_15

                              图1.15 DAPP架构图

该接口是一个JSON RPC协议,该协议有很多代码实现。目前最流行的是运行在Web容器中的Web3.js模块。Solidity编程语言经过编译之后,除了交易需要的合约初始化代码之外,还有ABI接口等描述文件,Web3.js通过这些描述文件,可以构建与以太坊智能合约虚拟机进行通讯的模块,通过JS(全称JavaScript,下文都简称JS)代码将用户的操作数据传入以太坊公链上的合约地址,智能合约虚拟机会根据函数签名和加载的函数参数,在虚拟机内执行编译成EVM Code的智能合约。在第6章的DAPP案例讲解中,会对Web3.js的设计有详细的讲解。

如果涉及到区块链数据的读取,则虚拟机会读取区块链上的区块数据,如果虚拟机的指令代码会修改以太坊公链的状态,那么通过调用相关的状态机指令,并消耗一定的GAS之后,就可以将修改操作提交到以太坊区块链公链网络中,这些操作往往是以交易的方式体现。

当虚拟机执行结束,其对区块链状态的修改会被矿工打包,当状态修改被全网共识,那么虚拟机对公链网络的状态修改也相应成功,通过查询相关的执行结果,将执行状态返回给用户交互系统,这样终端用户就可以通过交互系统,查看DAPP操作的执行结果。

 

2020区块链各种应用都上马了,跟我一起学《区块链DAPP开发入门、代码实现、场景应用》吧。
19c39602dd538ac0

原文链接:https://yq.aliyun.com/articles/721943
关注公众号

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。

持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。

转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。

文章评论

共有0条评论来说两句吧...

文章二维码

扫描即可查看该文章

点击排行

推荐阅读

最新文章