15 CodeProject-Jerry

尚未进行身份认证

Jerry.Wang

等级
TA的排名 6k+

后·冯诺依曼时代,一场计算机革命悄然来临

后·冯诺依曼时代,一场计算机革命悄然来临号称能够满足区块链扩展性要求的Blockchain3.0们,没有一百也有八十。这其中除开大部分的空气项目,真正有创新有作为的候选者,在笔者看来屈指可数。它们大都通过sharding或者Layer2的方案在传统的冯诺依曼体系架构下修修补补,不能说这样的选择有错。其实可扩展性难题来自于区块链之外,而在这些Blockchain3.0项目中,有一个却意义非凡–...

2018-08-18 09:02:19

RChain运行原理[7] - Casper共识之预言机

经过上一篇《Casper共识之安全性》的铺垫,本篇开始介绍RChain具体如何判断区块已经处于终结(finalized)状态。1终结性下面动图演示了区块的终结过程。和BTC不同,RChain的区块具备终结性(Finality)。所谓终结,即表示区块所选择的分支不会在未来发生更改,因此终结的区块一定是从头向尾进行。一个区块只有当它所有前置区块的分支选择不再变化后,才可能有当前区块的终结性。...

2018-07-16 08:19:27

RChain运行原理[6] - Casper共识之安全性

在上一篇《Casper共识之估值函数》中介绍了验证者(validator)在打包区块时选择父级区块的逻辑,还剩下了一个问题-区块(block)在加入到DAG链后何时才能被认可?认可即为共识,在解决“如何做”之前需要理解“为什么要这样”,所以本篇是下一篇的铺垫,解释Casper共识的原理。1概述共识协议是在分布式环境中对某个命题在拜占庭容错度内(ByzantineFaultTole...

2018-07-16 08:07:20

RChain运行原理[5] - Casper共识之估值函数

在上一篇《区块结构与DAG》中讲到了一个名字空间对应一条DAG链,那么它具体是如何生成的?要回答这个问题,首先需要弄清楚两个子问题:验证者(validator)在打包区块时是如何选择父级区块?区块(block)在加入到DAG链后如何被认可?这两个问题相辅相成。其中第二个问题是第一个问题的目标。一个区块被认可也就是说这个区块内包含的状态变化进入到了终结(Finalized)状态...

2018-06-26 12:55:29

RChain运行原理[4] - 区块结构与DAG

区块结构RChain的区块结构如下图。如上图所示,RChain的一个Block由下面这些项组成:Header头部parentshashorderedlist指向父级区块的列表poststatehash-Body中poststate的哈希newcodehash-Body中newcode的哈希reductions/receipthash...

2018-06-14 08:31:50

革命性的计算机理论实践 - RChain技术浅析

革命性的计算机理论实践-RChain技术浅析5月20日,作为RChain合作社成员的我,受湖南大学爱康区块链金融研究中心之遥,参加了RChain的首次meetup并发表了《革命性的计算机理论实践-RChain技术浅析》的演讲.演讲视频地址:https://www.bilibili.com/video/av23767359/...

2018-05-24 13:06:19

RChain运行原理[3] - 名字空间(Namespace)

名字空间在前面的两篇文章中介绍了Rholang的基本概念以及RChain的基本原理。但blockchain还有一个大问题需要解决,就是可扩展性(scalability)。可扩展性分为计算和存储两个方面:从计算的角度来说,如果同一个合约需要在所有节点上都执行一次,这不仅是一种性能的极大浪费,而且会造成全网的吞吐量存在一个无法突破的瓶颈。从存储的角度来说,如果节点需要保存所有合约的状态...

2018-05-11 10:26:08

RChain运行原理[2] - 元组空间(Tuplespace)

Rholang的消息机制在前文《初识Rholang》中提到了Rholang通信机制的两个基本操作,先复习下:语法含义for(x<-channel)P从channel这个name中读取一条消息并删除,消息保存到x这个name中后执行Pchannel!(Q)将Q这个process发送到channel这个name中Rho...

2018-05-11 10:16:34

RChain运行原理[1] - 初识Rholang

初识Rholang目前Rholang已经出到了v0.2.1,虽然距离正式版还有半年多,但语言的基本骨架已经出来了。从本文开始我会将我的学习笔记分享出来。本文的代码可以复制到http://rchain.cloud/在线执行。1、理论背景20世纪上半叶,在计算机理论方面出现了以μ-recursivefunctions,AlanTuring的图灵机器和λ-calculus为代...

2018-04-26 10:59:07

拷贝文件到docker volume后出现的权限问题

拷贝文件到dockervolume后出现的权限问题首先dockerinspect找出volume的路径,直接将文件文件拷贝进去后,即使chown/chmod修改了所有者和权限,在docker内访问还是PermissionDenied.解决方法是chcon-Rtsvirt_sandbox_file_t/mnt/docker/volumes/9d9087c8a4fbb144

2017-11-23 14:09:50

群晖Synology DSM6.1 使用国内docker镜像加速

现在流行的键盘布局当年却是为了降低打字速度而发明的。类似这样的反人类发明还有很多,而由于其中某个发明的原因,从瓷国访问dockerhub服务器无比龟速。

2017-10-23 08:48:45

将CouchDB设置为只读模式

通过CouchDB的validationfunction可以将CouchDB设置为只读模式validate_doc_update设置为如下函数function(newDoc,oldDoc,userCtx){if((newDoc&&newDoc._id=='_design/readonly-database')||(oldDoc&&oldDoc.

2015-04-22 14:45:22

对docker container进行内核参数调优(tune)

对于dockercontainer的调优还是和普通的Linux调优有很大的区别

2015-04-06 22:37:19

使用Supervisord实现Docker Container的自启动

使用Supervisord实现DockerContainers的自启动实现

2015-03-30 12:25:04

利用backtrace诊断 Segment Fault 崩溃原因

利用backtrace诊断SegmentFault崩溃原因Linux的一个daemon进程在非常偶然的情况下导致SegmentFault崩溃,基本上要半年才会发生一次。对于这种很难重现的问题,幸好进程中有如下代码中在崩溃时导出堆栈

2015-03-27 20:26:49

重启docker服务器后 遇到 'device or resource busy'错误

如果有container在运行的时候重启docker服务,可能会导致container无法启动,错误信息类似于Errorresponsefromdaemon:Cannotstartcontainerzookeeper:Errorgettingcontainerddf1dd91bbf46dc648268327f8f7c6fffaf2f19cda5cf1d97fdc70

2015-01-26 12:48:44

Apache Kafka 分布式消息队列中间件安装与配置

wgethttp://apache.fayea.com/apache-mirror/kafka/0.8.1.1/kafka_2.8.0-0.8.1.1.tgzgtarxvzfkafka_2.8.0-0.8.1.1.tgzcdkafka_2.8.0-0.8.1.1bin/zookeeper-server-start.shconfig/zookeeper.properties

2014-07-18 15:40:35

SVG动画 - 跳舞的女郎

<iframeframeborder="0"scrolling="no"src="http://static.gammatrix-dev.net/ff/test.html"?

2014-04-30 12:53:04

Redis实现分布式全局锁

这个问题很简单,首先调用INCR 并检测返回值,如果等于1就表示获得了锁然后EXPIRE设置此Key的过期时间,然后开始进行操作,当操作完成后DEL删除这个KEY伪代码如下if(INCR('EXCLUSION_COUNT')==1){EXPIRE(60)//setttlfor1minute//DOsomeworkDEL(

2014-03-06 18:04:15

Nodejs Native AddOn的编写

如果要在nodejs中调用动态链接库中的导出方法,或者从动态链接库中回调nodejs中的某个方法,可以采用node-ffi(https://github.com/rbranson/node-ffi )。不过我试了很久都没有成功,貌似ffi对于回调的支持有问题,无法正确区分_stdcall与_cdecl。而另一种实现方式就非常简单直接了,通过编写nodejsaddon的方式直接实现。nod

2014-02-05 17:22:55

查看更多

勋章 我的勋章
  • 专栏达人
    专栏达人
    授予成功创建个人博客专栏的用户。专栏中添加五篇以上博文即可点亮!撰写博客专栏浓缩技术精华,专栏达人就是你!