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

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

查看所有标签

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

从需求到产品:0岁产品经理进阶之道

从需求到产品:0岁产品经理进阶之道

权莉 / 人民邮电出版社 / 2018-7 / 49.80元

本书主要针对刚入职的初级产品经理,从贴近工作状态的场景切入,对各阶段的知识点进行分类总结,旨在提供一套经过实践检验的产品方法论,为读者从初级产品经理成长为产品经理奠定坚实的基础。 书中提炼的方法和案例涵盖初级产品经理工作的方方面面,从基本技能到思维方式,从需求管理到产品规划定义,从框架选型到流程梳理,从工作模块拆解到案例剖析,用具体且贴合实际工作场景的内容,还原真实的产品工作方法及实践案例,既有方......一起来看看 《从需求到产品:0岁产品经理进阶之道》 这本书的介绍吧!

RGB转16进制工具
RGB转16进制工具

RGB HEX 互转工具

MD5 加密
MD5 加密

MD5 加密工具

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

Markdown 在线编辑器