跳转到内容
FIBOS社区
登入来追随这个  
我叫李操

操哥小知识课堂-节点基础篇

已推荐文章

萌新阶段的我知识分享下,不对的地方欢迎大佬指正

前言:

    这段时间一直研究搭建主网节点,BP节点 、同步节点有些许心得吧,跟大家分享一下,附件会附上各种节点配置样板

1.主网节点 略过。一辈子跑一次

2.BP服务器 (请大家慎重搭建,这是一种责任)

         任务:出块,协助管理社区,给大家提供api服务

         奖励:FO

         出块规则: 票数在前21的会轮流负责出块。

         奖励规则:出块数的奖励+被投票数占比的奖励

        所以就算没有当选21节点 负责出块,如果你票数有占比在,一样会有FO的奖励。块数奖励是有记录的,所以啥时候领都可以。

票数奖励是实时的,所以如果你不负责出块

 

         

 

                 

 

分享这篇文章


链接文章
分享到其他网站

 

BP服务器 (请大家慎重搭建,责任与荣誉与奖励并存)
         任务:出块,协助管理社区,给大家提供api服务
         奖励:FO
         出块规则: 票数在前21的会轮流负责出块。
         奖励规则:出块数的奖励+被投票数占比的奖励
        所以就算没有当选21节点 负责出块,如果你票数有占比在,一样会有FO的奖励。块数奖励是有记录的,所以啥时候领都可以。
票数奖励是实时的,所以票数奖励 建议一到时间就领。领取奖励的技能有24小时的冷却时间。
       BP代码解析(代码包在附件bp.zip);
            我一般这么写bp代码
               var fibos = require('fibos');
               var fs = require("fs");
               var producername = ''; //名称 公钥 私钥 可以写死在代码里,也可以这样临时输入
                console.notice("start FIBOS producer nodes");
                var keys = '';// 公共钥,私钥
                while (true) {
                       keys = console.readLine("input the  produce-rname:public-key:private-key! oooo:xxxxx:xxxx\n");
                     if (keys) break;
                }
               keys = keys.split(":");
               producername = keys[0];
               fibos.config_dir = "./"; //config.ini的 位置
               fibos.data_dir = "./blockdata"; // 数据存放的位置 自行配置 。现在是当前目录下blockdata文件夹
              console.notice("config_dir:", fibos.config_dir);
              console.notice("data_dir:", fibos.data_dir);
               // fibos.load("http"); //http服务 建议bp不对外提供http服务,如要提供可以参考下面全节点
              fibos.load("net", { //同步模块
                    // "p2p-peer-address": "127.0.0.1:9870", //建议填写多个值(但是 这边 bug,不管填数组还是字符串只能一个启动作用,所以使用第二套方案)
                       "p2p-listen-endpoint": "0.0.0.0:9871" //提供给其他节点的同步地址。0.0.0.0表示允许所有
               });
          fibos.load("producer", { //节点拥有者配置
               'producer-name': producername,
               'enable-stale-production': true,
                'max-transaction-time': 3000, //允许事务的最大时间 可注视掉
                'private-key': JSON.stringify([keys[1], keys[2]]) //公钥匙私钥 串
            });
 
         fibos.load("chain",{
                // "contracts-console": true, //打印是否显示
               // 'chain-state-db-size-mb': 8 * 1024, //
               //"delete-all-blocks": true, // 启动时候是否重置
               'genesis-json': 'genesis.json' // 主网的 chain_id ,当你重启服务时候需要 注释掉
        });
         fibos.start();

分享这篇文章


链接文章
分享到其他网站
发表于 (已编辑)

fibos-bp.zip           

第二套方案 多p2p配置方案
操作:配置config.ini 文件   
原理:节点启动时后会自动 到设置的的config_dir 找 config.ini文件,如果没有会自动创建一份。
我们可以拿一份原版的,在里面多行配置 p2p节点 附件。
 
这边有一个坑,如果你是提供http服务的节点需要 在代码http模块中增加配置 http-validate-host = false .不然http服务拒绝 其他人访问。。这里原因在于 我们自己写了config.ini文件 ,我们只改了 p2p-peer-address,但是config.ini默认是 true的,有点绕。慢慢顺顺。
 
附件里是 只填里 主网的几个p2p节点,大家可以自行填写多个
此内容已被编辑, ,由 我叫李操

分享这篇文章


链接文章
分享到其他网站
发表于 (已编辑)

 问题官方已修复上述问题:  重新 安装最新版本fibos就可以解决 ;

 已经启动的 节点(包括bp和seed节点)操作步骤如下:

                             1. 执行  curl -s https://fibos.io/download/installer.sh |sh        安装最新版本fibos

                             2.确认注释掉了    // "delete-all-blocks": true,
                                                           //'genesis-json': 'genesis.json'   因为已经有块,所以不需要再引用

                             3.关闭服务,重新启动

                       BP大大们 重新互相通知下,不要一起重启呀,

此内容已被编辑, ,由 我叫李操

分享这篇文章


链接文章
分享到其他网站
8 小时前 , asdfsi 说:

官方的那些节点基本连不上啊

这些初始节点 现在属于社区的一部分,您可以查看下 您的服务器位置,选择连接比较顺畅的p2p和http地址

分享这篇文章


链接文章
分享到其他网站
一小时前 , 我叫李操 说:

这些初始节点 现在属于社区的一部分,您可以查看下 您的服务器位置,选择连接比较顺畅的p2p和http地址

谢啦,用你给的节点同步了。

分享这篇文章


链接文章
分享到其他网站
12 分钟前 , asdfsi 说:

谢啦,用你给的节点同步了。

不客气 其实还有问题就是这些公布的节点  被 连接满了,所以别人连不上了,最大 25个

分享这篇文章


链接文章
分享到其他网站

启动部署脚本可以放到SCM上方便管理么? 比如Github/Gitlab

这样大家可以一起完善。

 

 

分享这篇文章


链接文章
分享到其他网站
2018/9/4 AM11点21分 , Walter 说:

genesis 文件可以共享下么?

{
"initial_timestamp": "2018-08-28T00:00:00.000",
"initial_key": "FO6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV",
"initial_configuration": {
"max_block_net_usage": 1048576,
"target_block_net_usage_pct": 1000,
"max_transaction_net_usage": 524288,
"base_per_transaction_net_usage": 12,
"net_usage_leeway": 500,
"context_free_discount_net_usage_num": 20,
"context_free_discount_net_usage_den": 100,
"max_block_cpu_usage": 200000,
"target_block_cpu_usage_pct": 1000,
"max_transaction_cpu_usage": 150000,
"min_transaction_cpu_usage": 100,
"max_transaction_lifetime": 3600,
"deferred_trx_expiration_window": 600,
"max_transaction_delay": 3888000,
"max_inline_action_size": 4096,
"max_inline_action_depth": 4,
"max_authority_depth": 6
},
"initial_chain_id": "6aa7bd33b6b45192465afa3553dedb531acaaff8928cf64b70bd4c5e49b7ec6a"
}

分享这篇文章


链接文章
分享到其他网站

建立一个帐号或登入来留意见

您需要成为会员才能留意见

建立一个帐号

注册成为我们的会员。这只要几个简单步骤!

注册新帐号

登入

已经有帐号?请在这里登入。

立即登入
登入来追随这个  

×