使用[Flowchain Ledger 开发一个Flowchain/IPFS节点应用程式,只需要简单几个步骤。
Step 1: 引入flowchain-ledger 程式库,这是Flowchain 区块链的主要SDK。
1
|
var PeerNode = require('flowchain-ledger').PeerNode;
|
Step 2: 实例化一个server instance,准备启动你的Flowchain 节点。
1
|
/**<br /> * Create an WoT.City application instance.<br /> */<br />var wotcity = require('wotcity.io');<br />var app = wotcity({ host: process.env.HOST, port: 8100 });
|
[ wotcity.io ]是Flowchain的底层通讯架构,这是一个去中心化的IoT软体框架,非常适合用来开发Peer-to-Peer的物联网应用程式。关于wotcity.io的技术细节,可参考[ Decentralized Internet of Things Software Framework for a Peer-to-Peer and Interoperable IoT Device ]。
Step 3: 实例化Flowchain 区块链的Peer Node,并加入到上述步骤的server instance。
1
|
// Create a Flowchain Ledger instance.<br />app.node = new PeerNode();
|
Step 4: 建立IPFS API 实例化,并加入到步骤2 所建立的server instance。
1
|
/**<br /> * Create an IPFS Client instance<br /> */<br />var IpfsApi = require('ipfs-api');
|
1
|
app.ipfs = IpfsApi({<br /> host: 'localhost',<br /> port: 5001,<br /> protocol: 'http',<br /> headers: {<br /> authorization: 'FLC ' + TOKEN<br /> }<br />});
|
Final Step: 启动Flowchain/IPFS 挖矿节点。
1
|
/**<br />* Start a Flowchain/IPFS mining node.<br />*/<br />app.start();
|
Flowchain + IPFS是专为串流式资料而生的区块链网络,当Flowchain/IPFS节点启动后,它会加入一个预设的 Validator Node。在Flowchain network里的所有Flowchain/IPFS节点,会自动组态成一个Peer-to-Peer分布式网路。
目前,Flowchain network 初生的时间,validator node 都是矿池节点(Computing Pool);这个设计的目的,是因为一个网路上线的初期,需要能被信任的节点(trusted nodes)来为我们处理交易。
![](../uploads/191125/1-191125141211130.gif)
启动Flowchain/IPFS 挖矿节点
最后,要怎么透过Flowchain 来做视讯直播呢?Flowchain/IPFS 节点支援HTTP 与WebSocket 协定,最简单的做法,就是使用HLS 或是HTTP 206 将即时视讯传送到任一个Flowchain/IPFS 节点。
以Mac 为例,只需要执行以下指令:
1
|
$ ffmpeg -s 320x240 -f avfoundation -r 30 -i "0" -f mpeg1video -b:v 800k -s 320x240 http://localhost:8100/video/000/send/320/240
|
总结来说,FFmpeg 会将即时影像以chunked data 方式传送给Flowchain/IPFS 节点。
网络上的Flowchain/IPFS 节点(即:Flowchain 矿工)负责处理chunked data 的交易(transactions),再将交易纪录在Flowchain 帐本。Chunked data 则是在「完成记帐」后,储存到IPFS 档案系统。
![](../uploads/191125/1-191125141AX10.jpg)
FLC 是Flowchain/IPFS 的激励层
这就是Flowchain/IPFS 矿工的任务;当矿工接收并完成任务时,就会得到FlowchainCoin (FLC) 做为奖励。
郑重声明:本文版权归原作者所有,转载文章仅为传播更多信息之目的,如作者信息标记有误,请第一时间联系我们修改或删除,多谢。