• 【05】FISCOBCOS中的节点配置


    官方文档https://fisco-bcos-documentation.readthedocs.io/zh_CN/latest/docs/manual/configuration.html
    在这里插入图片描述配置黑名单列表
    基于防作恶考虑,FISCO BCOS允许节点将不受信任的节点加入到黑名单列表,并拒绝与这些黑名单节点建立连接,通过[certificate_blacklist]配置
    1.查看节点id
    在这里插入图片描述2.查看连接,以node0为例。(8545是node0的rpc端口)

    curl -X POST --data '{"jsonrpc":"2.0","method":"getPeers","params":[1],"id":1}' http://127.0.0.1:8545 |jq
    
    • 1

    在这里插入图片描述可看到连接信息,node0连接了除自身之外的其它四个节点

    配置黑名单(a拒绝b的链接)

    例如节点0拒绝节点1的链接

    则需要在节点0黑名单处添加节点1的ID,具体操作如下:

    vim node0/config.ini
    
    • 1

    在这里插入图片描述
    在这里插入图片描述

    crl.idx: 黑名单节点的Node ID, 节点Node ID可通过node.nodeid文件获取; idx是黑名单节点的索引。
    重启节点后生效
    在这里插入图片描述

    SDK白名单配置和黑名单相似
    为了实现sdk到群组的访问控制,FISCO BCOS v2.6.0引入了群组级的SDK白名单访问控制机制,配置位于group.{group_id}.ini的[sdk_allowlist],默认关闭
    FISCO BCOS v2.6.0默认关闭SDK到群组的白名单访问控制功能,即默认情况下sdk与所有群组均可通信,若要开启sdk与群组间基于白名单的访问控制功能,需要将 ;public_key.0 等配置项前面的分号去掉

    动态配置系统参数
    FISCO BCOS系统目前主要包括如下系统参数(未来会扩展其他系统参数):
    在这里插入图片描述控制台提供 setSystemConfigByKey 命令来修改这些系统参数,getSystemConfigByKey 命令可查看系统参数的当前值:

    不建议随意修改tx_count_limit和tx_gas_limit,如下情况可修改这些参数:

    机器网络或CPU等硬件性能有限:调小tx_count_limit,或降低业务压力;

    业务逻辑太复杂,执行交易时gas不足:调大tx_gas_limit。

    rpbft_epoch_sealer_num 和 rpbft_epoch_block_num 仅对rPBFT共识算法生效,为了保障共识性能,不建议频繁动态切换共识列表,即不建议 rpbft_epoch_block_num 配置值太小

    # 设置一个区块可打包最大交易数为500
    [group:1]> setSystemConfigByKey tx_count_limit 500
    # 查询tx_count_limit
    [group:1]> getSystemConfigByKey tx_count_limit
    [500]
    
    # 设置交易gas限制为400000000
    [group:1]> setSystemConfigByKey tx_gas_limit 400000000
    [group:1]> getSystemConfigByKey tx_gas_limit
    [400000000]
    
    # rPBFT共识算法下,设置一个共识周期选取参与共识的节点数目为4
    [group:1]> setSystemConfigByKey rpbft_epoch_sealer_num 4
    Note: rpbft_epoch_sealer_num only takes effect when rPBFT is used
    {
        "code":0,
        "msg":"success"
    }
    # 查询rpbft_epoch_sealer_num
    [group:1]> getSystemConfigByKey rpbft_epoch_sealer_num
    Note: rpbft_epoch_sealer_num only takes effect when rPBFT is used
    4
    
    # rPBFT共识算法下,设置一个共识周期出块数目为10000
    [group:1]> setSystemConfigByKey rpbft_epoch_block_num 10000
    Note: rpbft_epoch_block_num only takes effect when rPBFT is used
    {
        "code":0,
        "msg":"success"
    }
    # 查询rpbft_epoch_block_num
    [group:1]> getSystemConfigByKey rpbft_epoch_block_num
    Note: rpbft_epoch_block_num only takes effect when rPBFT is used
    10000
    # 获取区块执行超时时间
    [group:1]> getSystemConfigByKey consensus_timeout
    3
    
    # 设置区块执行超时时间为5s
    [group:1]> setSystemConfigByKey consensus_timeout 5
    {
        "code":0,
        "msg":"success"
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44

    在这里插入图片描述

  • 相关阅读:
    【JVM】native关键字的使用
    猿创征文|网络安全的十大经典工具介绍
    JAVAEE框架技术之15SSM综合案例 订单管理查询
    基于web多媒体电子贺卡平台
    python读取amazon s3上的文件到内存
    新人笔记1
    软件设计师中级
    数字工业 弹性安全丨2022 Fortinet工业互联网安全发展峰会成功举办
    【VUE】vue.js、vue.min.js、vue.runtime.esm.js
    【Kotlin】从字节码角度理解kotlin构造函数、成员变量、init代码块执行顺序
  • 原文地址:https://blog.csdn.net/weixin_43491496/article/details/133218445