FISCO-BCOS精华篇
(本文不含基础部署教程)
节点部署指令的区别和含义
bash build_chain.sh -f ipconf -p 30300,20200,8545
和
bash build_chain.sh -l 127.0.0.1:4 -p 30300,20200,8545
两个命令一个用配置文件启动一个用 -l启动,-f使用配置文件启动可以定制更多内容
bash build_chain.sh -d -l 127.0.0.1:4 -p 30300,20200,8545
加上-d,在使用bash start_all.sh
的时候就是直接使用docker启动
对HelloWorld
合约进行操作测试
查看交易回执,解释每个字段含义;
- `transactionHash`:交易哈希,标识此次交易的唯一标识符。
- `transactionIndex`:交易在区块中的索引位置。
- `root`:默克尔树的根哈希值。
- `blockNumber`:交易所在的区块号。
- `blockHash`:区块的哈希值。
- `from`:交易发送者的地址。
- `to`:交易接收者的地址,如果是合约部署交易,则为合约地址。
- `gasUsed`:交易使用的燃料量(Gas)。
- `remainGas`:剩余的燃料量(仅适用于查询交易)。
- `contractAddress`:合约部署后的合约地址。
- `logs`:交易产生的事件日志。
- `logsBloom`:Bloom 过滤器,用于快速匹配事件日志。
- `status`:交易执行状态,0 表示失败,1 表示成功。
- `statusMsg`:状态消息,提供有关状态的更多信息。
- `input`:交易的输入数据。
- `output`:交易的输出数据。
- `txProof`:交易的证明(可选)。
- `receiptProof`:交易回执的证明(可选)。
- `message`:附加消息。
请注意,有些字段的值可能会为 null 或空字符串,这取决于交易的具体情况。例如,logs 列表中的事件日志在此处为空。
修改委员会
切换其他用户身份命令:./start.sh 1 -pem accounts/0x123123123123123123.pem
控制台提供账户生成脚本get_account.sh
(脚本用法请参考账户管理文 档,生成的的账户文件在accounts目录下,控制台加载的账户文件必须放置在该目录下。 控制台启动方式有如下几种:
./start.sh
./start.sh groupID
./start.sh groupID -pem pemName
./start.sh groupID -p12 p12Name
默认启动
使用控制台配置文件指定的默认群组号启动。
./start.sh
注意: 控制台启动未指定私钥账户时,会尝试从accounts
目录下加载一个可用的私钥账户用于发送交易,加载失败则会创建一个新的PEM
格式的账户文件,将其保存在accounts
目录下。
指定群组号启动
使用命令行指定的群组号启动。
./start.sh 2
- 注意:指定的群组在控制台配置文件中需要配置bean。
使用PEM
格式私钥文件启动
- 使用指定的pem文件的账户启动,输入参数:群组号、-pem、pem文件路径
./start.sh 1 -pem accounts/0xebb824a1122e587b17701ed2e512d8638dfb9c88.pem
使用PKCS12
格式私钥文件启动
使用指定的p12文件的账户,需要输入密码,输入参数:群组号、-p12、p12文件路径
./start.sh 1 -p12 accounts/0x5ef4df1b156bc9f077ee992a283c2dbb0bf045c0.p12
Enter Export Password:
注意: 控制台启动时加载p12文件出现下面报错:
exception unwrapping private key - java.security.InvalidKeyException: Illegal key size
可能是Java版本的原因,参考解决方案:https://stackoverflow.com/questions/3862800/invalidkeyexception-illegal-key-size
问题一:构建单群组网络节点的命令是什么?bash build_chain.sh –l 127.0.0.1:4 –p 30300,20200,8545
多群组可以用-f的指令(在上面有解释)
问题二:查看节点node2共识的命令是什么?tail –f nodes/127.0.0.1/node2/log/log\* | grep +++
扩容群组的话是要把新群组的文件group.*.genesis
和group.*.ini
两个文件都分别复制给每个节点里并修改group.*.genesis
里面的群组id
扩容节点,扩容节点需要为节点签发证书
bash gen_node_cert.sh -c ../cert/agency -o node4
-c是证书路径 (用于给节点签发证书的文件)
cp node0/config.ini node0/start.sh node0/stop.sh node4/
复制启动文件和配置文件到里面,并修改配置文件中的4个参数
控制台的使用
共识节点:完成网络准入并加入群组的节点,参与共识的节点,拥有群组的所有数据;
观察节点:完成网络准入并加入群组的节点,不参与共识,但能实时同步链上数据的节点;
游离节点:完成网络准入但没有加入群组的节点。游离节点尚未通过群组准入,不参与共识和同步。
查看共识节点列表:getSealerList
查看观察者节点列表:getObserverList
查看所有的p2p节点列表:getNodeIDList
查看运行日志常用命令
tail -f node4/log/log* | grep "connected count" #查看node4节点连接数量
tail -f node4/log/log* | grep "+++" #查看节点共识
tail -f node4/log/log* | grep "fisco-bcos" #查看节点运行状态
版权属于:戏人看戏博客网
本文链接:https://day.nb.sb/archives/1167.html
若无注明均为戏人看戏原创,转载请注明出处,感谢您的支持!