You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@ByCnck you said that dapp code can be safely hosted by a third party. Did you mean the "public" part of the Dapp? You also asked some questions about how to ensure the safety of the contract? Can you relate your points with #228. Thanks for your efforts.
下面这些问题将来需要转成wiki。
0、为什么dapp必须要部署主链?侧链网络可以脱离主链(禁止与主链互通)自行运作吗?
分两种
a.基于asch sdk开发的dapp(本身就是一条链,侧链只不过是相对asch主链而言),目前必须依赖asch主链运行,dapp进程需要和主链进程进行通讯
b.其他链(任意支持多签的其他链),比如btc,也可以和asch主链进行跨链操作,但不需要依赖asch主链运行
1、dapp除了和主链进行充值、提现外还有哪些通讯?
主链为sdk提供了一系列的接口,还可以查询主链的账户、区块、交易、节点等信息
具体可以参考asch-sandbox/framework/api中的代码
2、dapp的peer为什么要存到主链的db文件中?
侧链的网络通讯需要由主链来转发。侧链不实现网络传输也是为了dapp代码可以安全地被第三方托管
3、dapp的受托人和主链的受托人是什么关系?
dapp和主链是两条链,分别有自己的共识算法,目前dapp模板内置的共识算法就是dpos(可以修改成其它共识算法,需要开发人员自己改造),所以主链和dapp的受托人是相互独立的、互不影响。
4、如果dapp要修改数据库结构,然后如何升级?还是只能推倒重来?
DB表结构通过ddl语句升级,当足够多的节点进行升级操作以及block高度达到某一值后,开启新功能。
共识分技术部分和节点所有人共识两部分。
5、是否提供可视化开发合约部署工具?
暂时没有
6、主链升级后,dapp节点是否需要同步升级?
需要。
7、以太坊合约编写与阿希侧链dapp合约编写有什么异同?
8、阿希的dapp是必须用nodejs开发吗?
目前是,后续会支持其它开发语言(当前时间2018-02-11)。
9、侧链网络只能运行一个dapp?
简单理解dapp=侧链+token(可以是XAS,也可以是用户自定义资产UIA),侧链和dapp是1对1的关系。
10、一个节点可以运行多少个dapp?
视服务器物理资源而定。默认OS需要至少1核cpu、主链运行需要2核cpu(nodejs主进程,sqlite3进程),每个dapp会启动占用2核cpu((nodejs子进程,sqlite3进程),每增加一个dapp则对应多占用2核cpu。内存视代码而定,但一般情况下每个dapp不能低于1G。
11、如何保证合约的安全性?能否更加简洁,让第三方方便审核?
图灵完备的语言理论上无法被证明是否存在bug,只能通过测试去解决。dapp规模足够大了之后,相信会有第三方审核机构的
12、dapp前端如何部署,与侧链网络的关系?
dapp 前端可以随着节点一起打包,类似于Asch的web钱包。也可以单独部署,一般我们都是前后端分离的,UI是单独部署。
![](https://github.com/AschPlatform/asch/raw/master/docs/assets/process-structure.png)
13、 时讯币是否也是侧链的一个实现?
xct是在主链发行的UIA,cctime是基于asch开发的侧链,他们两者组成了cctime这个dapp。cctime主要功能是消耗xct(从主链充值到cctime侧链)来发表文章、对文章进行评论点赞等操作(每一个操作就是一个智能合约)。所以不能简单说xct是侧链的实现,他只是侧链的一部分(这里xct就是cctime这个应用的token,通证,只有拥有通证的账户才能执行相关的智能合约,比如发表文章、点赞)
14、 并发处理架构会研究吗?
目前Asch的架构实际上已经实现了并发。所有的dapp都是在沙箱中独立运行,dapps之间是实时并行计算。
The text was updated successfully, but these errors were encountered: