240 发简信
IP属地:广东
  • 支持context的mutex(golang)

    我们知道,golang自带的mutex实现非常精巧,性能也很出色。对实现原理感兴趣的同学可以参见这篇文章,https://purewhite.io/2019/03/28/go...

  • 120
    fasthttp原理简析

    fasthttp是golang下的一个http框架,顾名思义,与原生的http实现相比,它的特点在于快,按照官网的说法,它的客户端和服务端性能比原生有了十倍的提升。 它的高性...

  • 120
    Golang里面string变量操作的原子性

    string是Go的内建类型,但对它的读写操作并非线程安全的,原因在于它的内部实际上是通过struct存储的,我们可以在runtime/string.go里面看到它的内部定义...

  • Goroutine的上下文存储(续)

    要做Goroutine级别的存储,首先是要获取到Goroutine的标识,之前提到过获取routine id的两个库,效率也比较低下,用在性能要求比较苛刻的场景下并不适合。 ...

  • 120
    总结分享5个NSQL库

    1、MongoDB MongoDB是一个基于分布式文件存储的数据库。由 C++ 语言编写。主要解决的是海量数据的访问效率问题,为WEB应用提供可扩展的高性能数据存储解决方案。...

  • 120
    区块链层2扩容简析

    我们正处于区块链2.0向3.0转化的时代,目标是大规模的商用。传统的区块链技术,如比特币和以太坊,在性能上面已经显得力不从心。 作为史上最慢的分布式数据库,比特币和以太坊的T...

  • Goroutine的上下文存储

    后端开发中,问题分析通常是请求级别的,如果能通过一个唯一的请求号对日志进行过滤,能对分析问题带来不少的便捷。我们的项目中也希望在请求相关的日志中,嵌入请求号。 Golang在...

  • @Ameeya傅越驰 谢谢指出,已修正😂

    零知识证明与zkSNARK

    最近以太坊启动了“大都会”硬分叉,很重要的一个功能就是整合了ZCash的零知识证明技术zkSNARK。我们一起来看一下zkSNARK这个拗口的技术到底是什么鬼。 零知识证明 ...

  • 120
    阿里云上的Devops实践

    敏捷开发少不了一个方便的持续交付环境。这些天在阿里云简单搭了一套开发环境,这里简单记录一下搭建过程。 先盗张图 Jenkins搭建 首先得有个Jenkins服务,在阿里云的容...

  • @nrek 赞成你的观点, 协议真心太复杂了,其实我觉得乐透奖金不一定是必须的,solver和verifier本身是个博弈的过程 ,最终可能自然形成一种平衡。
    本质上这也是个社会实验,上线验证才是硬道理,有问题再打补丁。
    另外,开发进度慢可能也有另外一方面原因是没有经济激励,truebit没有自己的代币,没法引起投资人的注意。可能并到plasma上才是它的最好归宿。

    TrueBit白皮书解读

    以太坊可以被描述为一个使用区块链的分布式全球计算机。它允许开发者把代码上传到区块链中,矿工共同执行并确保结果的正确性,作为报酬,开发者需要付出一定量的以太币,称为gas。以太...

  • "另一个是Solver提交答案所在区块的哈希" - 纠正一下哈,应该是Solver提交答案所在区块的下一个区块的哈希。

  • 谢谢提醒,查了一下白皮书,确实如你所述,已更新。其实用答案所在区块的哈希也是可以达成目的的,因为Solver在提交答案时也无法预测矿工打包时生成的哈希值。
    查白皮书的时候想了下,这个乐透机制其实我个人认为是存在问题的,Solver第一个知道forced error,他可以偷跑去自己揭发自己拿奖金。这种情况下,虽然Task giver仍然能得到正确答案,但是Verifier输在起跑线上,获得乐透的概率大减,最终还是没解决生态的问题。

    TrueBit白皮书解读

    以太坊可以被描述为一个使用区块链的分布式全球计算机。它允许开发者把代码上传到区块链中,矿工共同执行并确保结果的正确性,作为报酬,开发者需要付出一定量的以太币,称为gas。以太...

  • 120
    Fabric和CouchDB

    因为良好的追加写入性能,从比特币到以太坊再到Hyperledge的Fabric,都选用了LevelDB作为存储方案,这个很好理解。 Fabric除了LevelDB以外,还提供...