摘要: 1. 单测 + 压测 压测 go test -bench=. -benchmem 单元测试 go test -v . 2. pprof + 火焰图(查看cpu占用,内存占用) 嵌入代码 import ( rawhttp "net/http" _ "net/http/pprof" ) func ini 阅读全文
posted @ 2019-02-17 20:21 林锅 阅读(2123) 评论(0) 推荐(0) 编辑
摘要: Profiling 在计算机性能调试领域里,profiling 就是对应用的画像,这里画像就是应用使用 CPU 和内存的情况。也就是说应用使用了多少 CPU 资源?都是哪些部分在使用?每个函数使用的比例是多少?有哪些函数在等待 CPU 资源?知道了这些,我们就能对应用进行规划,也能快速定位性能瓶颈。 阅读全文
posted @ 2019-02-17 20:21 林锅 阅读(10890) 评论(0) 推荐(2) 编辑
摘要: 疑惑的根源 相信大家都看过上面的这张图,这张图来自中本聪的比特币白皮书,用来介绍比特币的交易。在这张图的上面,中本聪写下了这样几句话:We define an electronic coin as a chain of digital signatures. Each owner transfers 阅读全文
posted @ 2019-02-17 20:20 林锅 阅读(5571) 评论(0) 推荐(2) 编辑
摘要: 尽管以太坊借用了许多已经在比特币这样的旧加密货币中试用和测试了五年的想法,但是以太网中有许多地方与处理某些协议功能的最常见方式不同,而且还有很多情况。以太坊被迫开发全新的经济方法,因为它提供了其他现有系统无法提供的功能。本文档的目的是详细说明在构建以太坊协议的过程中所做的所有更细微的潜在非显而易见或 阅读全文
posted @ 2019-02-17 19:51 林锅 阅读(355) 评论(0) 推荐(0) 编辑
摘要: 两阶段提交 Two-phase Commit(2PC):保证一个事务跨越多个节点时保持 ACID 特性; 两类节点:协调者(Coordinator)和参与者(Participants),协调者只有一个,参与者可以有多个。 过程: 准备阶段:协调者询问参与者事务是否执行成功; 提交阶段:如果事务在每个 阅读全文
posted @ 2019-02-17 13:51 林锅 阅读(469) 评论(0) 推荐(0) 编辑