Legion:基于Haskell开发的极简区块链服务器

栏目: 编程语言 · 发布时间: 9年前

内容简介:Legion:基于Haskell开发的极简区块链服务器

原文: Legion, an as-simple-as-possible blockchain server written in Haskell

翻译:雁惊寒

这是一个源于 naivechain 的极简区块链服务器项目,开发语言为Haskell。通过启动多个Legion节点来创建一个点对点网络,从而使得网络上的区块链得到同步。

前提条件:要编译源代码,你需要使用 stack 。

或者,你也可以获取预编译的 预发布二进制文件 。 注意:如果你是从github下载二进制文件,则需要通过运行以下命令来把它标记为可执行文件:

$ chmod +x legion-exe
用法:
$ stack exec legion-exe [http port] [p2p port] [optional: `seedhost:seedP2PPort`]
例子:
$ stack exec legion-exe 8001 9001

默认情况下,legion会把输出到标准输出的内容记录下来。在另一个终端窗口中执行:

$ stack exec legion-exe 8002 9002 localhost:9001

或者,你可以从github获取二进制文件并直接运行,而不是通过stack exec来运行。

第三个参数告诉节点从哪里可以找到一个种子节点来引导到点对点网络的连接。你可以从任何一台服务器上获取到区块链的当前状态,它将自动保持更新,并将自己的更新状态发送给其他节点。

现在,两个节点已经同步了,你可以从 http://localhost:$httpPort/chain 这样的地址查看当前的区块链,例如: http://localhost:8001/chain

通过发送POST请求到/block来向区块链添加一个新的区块:

$ curl -H "Content-Type: application/json" -X POST -d '{"blockBody": "this is the data for the next block"}' http://localhost:8001/block

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们。

UCD火花集

UCD火花集

UCDChina / 人民邮电出版社 / 2009 / 25.00元

本书收集了UCDChina上线以来推出的13个话题,内容涵盖了产品设计的全部流程,按顺序集结到第一到第十三章中,讨论了如何研究用户、如何将用户需求应用到产品设计中、如何传达和协作。在第十四章,几位设计师分享了生活中的UE故事。第十五章,列举了一些实例和实践者的观点。本书适合有一定工作经验,从事产品设计、产品策划、交互设计、视觉设计、用户研究、前端开发、网站运营,以及所有与互联网有关的从业人员阅读。一起来看看 《UCD火花集》 这本书的介绍吧!

图片转BASE64编码
图片转BASE64编码

在线图片转Base64编码工具

XML、JSON 在线转换
XML、JSON 在线转换

在线XML、JSON转换工具

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器