简链区块链技术
1. 什么是区块链技术区块链技术的核心构成是什么
从技术的角度,架构的角度,用通俗的语言来跟大家讲讲,我对区块链的一些理解。
究竟啥是区块链?Block chain,一句话来说,区块链是一个存储系统,存储系统更细一点,区块链是一个没有管理员,每个节点都拥有全部数据的分布式存储系统。
那常见的存储系统,是什么样子的呢?
首先看一下如何保证高可用?
普通的存储系统通常是用“冗余”的方式来解决高可用问题的。图上图所示如果能够把数据复制成几份,冗余到多个地方,就能够保证高可用。一个地方的数据挂了,另外的地方还存有数据,例如MySQL的主从集群就是这个原理,磁盘的RAID也是这个原理。
这个地方需要强调的两点是:数据冗余,往往会引发一致性的问题
1、例如MySQL的主从集群中中其实读写会有延时的,它其实就是有一个短的时间内读写不一致。这个是数据冗余,带来的一个副作用。
2、第二个点是数据冗余往往会降低写入的效率,因为数据同步也是需要消耗资源的。你看单点写入,如果加了两个从库之后,其实写入的效率会受影响。普通的存储系统,就是采用冗余的方式,保证数据的高可用的。
那么第二个问题,普通的存储系统,能否多点写入呢?
答案是可以的,比如说以这个图为例:
其实MySQL的话可以做一个双主的主从同步,双主的主从同步,两个节点,同时可以写入。如果要做多机房多活的数据中心,其实多机房多活也是进行数据同步的。这里要强调的是多点写入,往往会引发写写冲突的一致性问题,以MySQl为例,假设有一个表的属性是自增ID,那么现在数据库中的数据是1234,那么其中一个节点写入,插入了一条数据,那它可能变成5了,然后这5条数据,向另外一个主节点进行数据同步,同步完成之前,如果另外一个写入节点,也插入了一条数据,也生成了一条这个自增id为5的数据。那么,生成之后,往另外一个节点同步,然后同步数据到达之后会与本地的这两条5冲突,就会同步失败,会引发写写的一致性冲突问题。这个多点写入的话都会出现这个问题。
多点写入,如何保证一致?
维新“天鹅大咖课”给你更多的技术干活
2. 简单谈谈究竟什么是“区块链”技术
区块链就是把加密数据(区块)按照时间顺序进行叠加(链)生成的永久、不可逆向修改的记录。
区块链是一种可以完全改变金融系统底层设计的技术,因为可以实现所有市场参与人对市场中所有资产的所有权与交易记录的无差别记录,所以可以完全消灭掉清算和托管这些在交易前中后进行所有权确认的中间环节;另外,区块链作为一种电子信息记录,可以结合计算机算法实现交易的自动化,即智能合约。区块链结合其他金融技术有许多衍生应用,每种均可以将一类市场中介替代。区块链之于金融服务,如同TCP/IP之于互联网:一旦底层标准得到认可与普及,类似比特币和R3的具体应用将会出现在金融服务的每个角落里。
3. 什么是区块链技术简单介绍
简单介绍,区块链是一个以密码学方式保证的不可篡改和不可伪造的分布式账本,可以将每个区块的信息看成是一页页的账单。区块链技术有它特有的去中心、抗篡改、可追溯、多方参与等特性,可以在很多行业看到它的参与,区块链相关应用听的比较多的就是区块链电子发票和区块链电子存证了。 密码财经 mimacaijing 专注 区块链信息。