从0开始学DX Mesh--第二天

组织介绍

DigQuant Technology点宽科技开源项目:

Direct Exchange Mesh (DX Mesh) for Web 3.0 - 面向 Web3.0 的分布式应用架构
在这里插入图片描述

历史沿袭

DX Mesh是由DQtech团队提出的“RPC网络+区块链网络“的双层网络设计思路,在此设计概论基础上,DX Mesh项目进行了大胆的设计,一个新的”Dual Network Architecture(DNA)“网络结构被提出。
开源项目链接:https://gitee.com/DXmesh

DX Mesh环境搭建

前期准备

需要搭建好C++和Rust的环境,并把从https://gitee.com/DXmesh把所有组件pull到本地文件中,以下是我的拉取完的例子(所有组件都在DX Mesh文件里面)
在这里插入图片描述

第一步–Common环境配置

Common是什么(具体信息见:https://gitee.com/DXmesh/Common/blob/dev/README.md

Common 提供 DXMesh 所有项目的共用代码。使用到的项目有 xPortxComRustLibxComBuilder。这些项目在编译时,必须要和 Common 放在同级目录,才能编译成功!!!

第二步–xPort环境配置

xPort 是什么(具体信息见:https://gitee.com/DXmesh/xPort/blob/dev/README.md

xPort 是 DXMesh 的运行时,负责加载和运行 DXC(DXMesh Component 应用组件)。xPort 为 DXC 提供以下功能:

  • 消息的发送 / 接收
  • 文件操作,节点间传输
  • 日志收集
  • HTTP 请求
  • 数据库操作

xPort 内置基于 protobuf 开发的 RPC 协议:xRPC。xRPC 用于 xPort 间通讯,对于应用是透明的。
首先确保同级目录下有公共代码库Common和xPort:
请添加图片描述
然后进入xPort,运行以下命令:

cargo build

这是我电脑安装的具体例子:
在这里插入图片描述
以下是安装完成的界面:
在这里插入图片描述

第三步–xComBuilder环境配置

xCoBuilder是什么(具体信息见:https://gitee.com/DXmesh/xComBuilder/blob/dev/README.md

xComBuillder是用于 DXMesh 应用组件开发的生成器。提供 dxc 工程创建、工程代码生成、组件编译、组件打包以及安装的命令。

首先,进入xComBuilder的文件路径,运行以下命令进行安装:

cargo install --path . 

这是我电脑下的具体例子:
在这里插入图片描述
以下是安装完成的界面:
在这里插入图片描述

第四步–xComService环境配置

xComService是什么(具体信息见:https://gitee.com/DXmesh/xComService/blob/dev/README.md

xComService是一个和 xPort 交互,以及将 xPort 部分二进制接口封装成 xRPC 接口的系统级别的DXC。

当前的功能有:

  • 建立 xPort 间的连接
  • 加载/卸载 应用组件
  • 提供查询当前 xPort 所加载的应用组件信息
  • 负责同步本地加载/卸载的应用组件到所有和自身连接的 xPort 节点。

首先,进入xComService的文件路径,运行以下命令进行安装:

xbuilder build

这是我电脑下的具体例子:
在这里插入图片描述

以下是编译完成的界面:
在这里插入图片描述
然后运行以下命令进行打包:

xbuilder pack

这是我电脑下的具体例子:
在这里插入图片描述

打包完成后运行以下命令安装到./xPort文件下:

xbuilder install -x  ../xport

这是我电脑下的具体例子:
在这里插入图片描述

第五步–xComRustLib环境配置

xComRustLib是什么(具体信息见:https://gitee.com/DXmesh/xComRustLib/blob/dev/README.md

xComRustLib 是 DXMesh 应用组件 DXC(DXMesh Componet),开发库。将 xPort 注入的接口,封装成 Rust 的 async 接口。提供 async 运行时,以及将 Common 接口导出给 DXC 使用。

首先,进入xComRustLib的文件路径,然后运行以下代码:

xbuilder build

这是我电脑下的具体例子:
在这里插入图片描述
以下是安装完成的界面:
在这里插入图片描述

启动xPort服务

到现在,恭喜你DX Mesh环境已经基本配置完成!!!
在启动xPort服务前,我这里使用postman工具用来做接口测试的工具
(具体安装使用教程见:https://blog.csdn.net/qq_41099091/article/details/107319193)

首先进入xPort的文件路径,修改dxmesh.toml的配置文件(文件具体信息见:https://gitee.com/DXmesh/xPort/blob/dev/dxmesh.toml),改成你所需要监听的ip和mysql的信息,然后在终端运行以下命令:

cargo run

这是我电脑下的具体例子:

以下我修改的dxmesh.toml配置文件(./xPort/dxmesh.toml),我这里用了本地的127.0.0.1:8090作为监听ip,127.0.0.1:8091作为服务监听ip,数据库用了本地的127.0.0.1:3306的mysql作为服务监听数据库。启动的default-dxc服务为我之前配置好的XComService_0_0_1工程。
在这里插入图片描述
修改好配置文件后,在终端运行命令:
在这里插入图片描述

以下运行命令后监听成功的界面(可以看见成功连接到我本地的数据库和启动了监听服务):
在这里插入图片描述
接下来,我用postman测试下接口:
以下是我用GetServiceList的接口来获取服务列表:

 {
    "dxc_name":"XComService",
      "dxc_version":"0.0.1",
      "service_name":"XComService",
      "api":"GetServiceList",
      "params":{
       
      }
  }

以下postman工具界面上所返回的服务列表信息:
在这里插入图片描述

以下是终端窗口反馈的服务信息:
在这里插入图片描述
欧克,到这里已经成功启动了xPort的监听服务项目。

第三天预告

使用DX Mesh的xComPython组件搭建第一个项目工程-Helloworld

若对DX Mesh架构和实操过程中有任何问题,可评论、私信、邮箱或者加下列微信和我一起探讨(我的邮箱:2195745704@qq.com):
在这里插入图片描述

  • 5
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值