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

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

内容简介: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

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

查看所有标签

猜你喜欢:

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

反应式设计模式

反应式设计模式

Roland Kuhn、Brian Hanafee、Jamie Allen / 何品、邱嘉和、王石冲、林炜翔审校 / 清华大学出版社 / 2019-1-1 / 98.00 元

《反应式设计模式》介绍反应式应用程序设计的原则、模式和经典实践,讲述如何用断路器模式将运行缓慢的组件与其他组件隔开、如何用事务序列(Saga)模式实现多阶段事务以及如何通过分片模式来划分数据集,分析如何保持源代码的可读性以及系统的可测试性(即使在存在许多潜在交互和失败点的情况下)。 主要内容 ? “反应式宣言”指南 ? 流量控制、有界一致性、容错等模式 ? 得之不易的关于“什么行不通”的经验 ? ......一起来看看 《反应式设计模式》 这本书的介绍吧!

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

在线图片转Base64编码工具

随机密码生成器
随机密码生成器

多种字符组合密码

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

在线XML、JSON转换工具