Skip to content

Latest commit

 

History

History
241 lines (212 loc) · 8.89 KB

useguide.md

File metadata and controls

241 lines (212 loc) · 8.89 KB

NULS2.0钱包使用指南

nuls.ncf

钱包核心配置文件,可在此文件中完成所有模块的配置。

配置文件结构

配置文件格式采用类window系统配置文件结构,分为组和参数。

[network]   #组
port=18001  #参数key和值

nuls.ncf里面的内容看上去大概是这个样子

[global]
encoding=UTF-8
language=en
。。。
[account]
keystoreFolder=/keystore/backup

[network]
port=10081
...

[global]是一个特殊的组,所有的模块都会继承这个组里的配置项。全局通用配置可以配置在这个组下面。 [account]、[network]这两个是账户模块和网络模块的专有配置。名称对应模块Module.ncf里面的APP_NAME配置项。 当[global]和模块组下面有相同配置项时,模块组下面的配置优先级更高,覆盖global里的配置。

与模块内配置文件的关系

在模块内部(比如Modules/Nuls/account/1.0.0)目录下,有一个Module.ncf的配置文件,外部nuls.ncf的优先级高于模块内部的Module.ncf,当出现同名配置项时,nuls.ncf里的配置项将覆盖模块内部的同名配置项。

生成配置文件

当首次下载或打包好钱包程序时,是不存在nuls.ncf这个配置文件的,首次执行start或start-dev时,会自动生成nuls.ncf。

start

钱包启动脚本,生产环境使用此脚本启动钱包

./start

shop

钱包停止脚本,生产环境使用此脚本停止钱包

./stop

start-dev

启动NULS2.0开发环境(兼容macOS系统)

./start-dev

stop-dev

停止NULS2.0开发环境

./stop-dev

cmd

启动命令行,进行钱包操作。

./cmd

指定日志级别,默认日志级别是ERROR,可选日志级别:DEBUG、INFO、WARN、ERROR

./cmd -l DEBUG #设置日志级别为DEBUG

指定配置文件路径,默认配置文件为同目录nuls.ncf

./cmd -c /home/my.ncf 

check-status

检查模块的启动状态。通过此功能可以快速检查各个基础模块是否启动成功。脚本原理是读取日志文件里面的日志标志位。

./check-status

执行结果

==================MODULE PROCESS====================
account PROCESS IS START
block PROCESS IS START
consensus PROCESS IS START
ledger PROCESS IS START
network PROCESS IS START
transaction PROCESS IS START
==================RPC REDAY MODULE==================
account RPC READY
block RPC READY
consensus RPC READY
ledger RPC READY
network RPC READY
transaction RPC READY
======================REDAY MODULE==================
account STATE IS READY
block STATE IS READY
consensus STATE IS READY
ledger STATE IS READY
network STATE IS READY
transaction STATE IS READY
================TRY RUNNING MODULE==================
account TRY RUNNING
block TRY RUNNING
consensus TRY RUNNING
ledger TRY RUNNING
network TRY RUNNING
transaction TRY RUNNING
===================RUNNING MODULE===================
account STATE IS RUNNING
block STATE IS RUNNING
consensus STATE IS RUNNING
ledger STATE IS RUNNING
network STATE IS RUNNING
transaction STATE IS RUNNING
==================NULS WALLET STATE=================
==========================
NULS WALLET IS RUNNING
==========================

当看到NULS WALLET IS RUNNING时表示启动成功。

create-address

生成账户地址和私钥。不依赖钱包,可独立运行生成地址。

./create-address
chainId:2
number:1
====================================================================================================
address   :tNULSeBaMi3UWVb1hMrsoEmv4XPPLW7CKmBVgn
privateKey:e27e3961384bc4749cb5bd535b16c90c4430d4da2cd34e1edd10b50b0d01fa1d
====================================================================================================

指定生成地址的chainId

./create-address -c 1   #指定chainId为1 ,(默认从nuls.ncf从读取chainId)

生成指定数量的地址

./create-address -n 100 #批量生成100个地址,(默认1)

附录

nuls.ncf 配置文件

全局配置:group

配置项 取值范围 说明
encoding 字符集 默认UTF-8,不建议修改
language en/zh_CHS 语言包。
logPath 文件夹相对路径 日志文件存储路径,配置文件上下文相对路径
logLevel DEBUG,INFO,WARN,ERROR 日志级别
dataPath 文件夹相对路径 数据文件存储路径,配置文件上下文相对路径
chainId 正整数 默认运行的链的链id
assetId 正整数 默认运行链的主资产id
chainName 字符串 默认运行链的链名称
symbol 字符串 默认运行链的主资产符号
decimals 正整数 默认资产的小数点右侧的位数
blackHolePublicKey 字符串 黑洞地址公钥

网络模块配置:network

配置项 取值范围 说明
port 正整数 网络通信端口
crossPort 正整数 跨链交易通信端口
packetMagic 正整数 网络魔法参数,魔法参数相同才会组网
selfSeedIps 字符串 默认连接的网络节点ip,多个用英文逗号隔开
maxInCount 正整数 允许外部节点与当前节点建立连接的总数量
maxOutCount 正整数 允许当前节点与外部节点建立连接的总数量

账户模块配置:account

配置项 取值范围 说明
keystoreFolder 文件夹路径 存储账户keystore文件的路径,此路径为在dataPath路径里的路径值

区块模块配置:block

配置项 取值范围 说明
blockMaxSize 正整数 一个区块可存储的最大字节数
extendMaxSize 正整数 区块扩展字段可存储的最大字节数
chainSwtichThreshold 正整数 引发分叉链切换的高度差阈值
maxRollback 正整数 本地区块与网络区块不一致时,本地最大回滚数
consistencyNodePercent 正整数 统计网络上的节点最新区块高度、hash一致的百分比阈值
minNodeAmount 正整数 最小链接节点数,当链接到的网络节点低于此参数时,会持续等待
downloadNumber 正整数 区块同步过程中,每次从网络上节点下载的区块数量
singleDownloadTimeout 正整数 从网络节点下载单个区块的超时时间
batchDownloadTimeout 正整数 从网络节点下载多个区块的超时时间
cachedBlockSizeLimit 正整数 区块同步过程中缓存的区块字节数上限

poc共识模块配置:consensus

配置项 取值范围 说明
seedNodes 地址列表 种子节点出块地址列表,多个地址用英文逗号隔开
password 字符串 种子节点出块地址的默认密码,导入地址时设置的密码必须和这个配置项一致
packingInterval 正整数 出块间隔,单位秒,配置为10,代表每10秒出一个块
agentAssetId 正整数 允许参与共识的资产id
agentChainId 正整数 允许参与共识的资产的链id
awardAssetId 正整数 共识奖励的资产id(必须在共识的资产所在的链,既资产链id相同)
feeUnit 正整数 手续费单价
packingInterval 长整型 出块间隔时间
redPublishLockTime 长整型 节点红牌保证金锁定时间
stopAgentLockTime 长整型 停止节点保证金锁定时间
commissionRateMin byte 共识奖励提成最小比例
commissionRateMax byte 共识节点共识奖励提成最大比例
depositMin BIgInteger 创建节点保证金最小值
depositMax BIgInteger 创建节点保证金最大值
commissionMin BIgInteger 节点出块最少委托金额
commissionMax BIgInteger 节点最大委托金额
entrusterDepositMin BIgInteger 单笔委托最新金额

智能合约配置:smart_contract

配置项 取值范围 说明
maxViewGas 正整数 合约视图方法调用最大消耗的Gas

public-service模块配置:public-service

配置项 取值范围 说明
rpcPort 端口号 http接口使用的端口号
databaseUrl ip地址 mongodb数据库ip地址
databasePort 端口号 mongodb数据库端口号
maxAliveConnect 正整数 数据库连接池最大连接数
maxWaitTime 正整数 从数据库获取连接的最长等待时间(毫秒)
connectTimeOut 正整数 数据库连接超时时间(毫秒)

跨链模块:cross-chain

配置项 取值范围 说明
minNodeAmount 正整数 跨链节点链接的最小值
maxNodeAmount 正整数 跨链节点链接的最大值
sendHeight 正整数 跨链交易在本链内确认块数
byzantineRatio 正整数 跨链交易拜占庭比例
crossSeedIps ip地址列表 主网跨链种子节点列表