DFINITY网络架构、原子性与编程范式解析

DFINITY采用分层架构,数据中心、节点、子网和软件容器共同构成其区块链网络。与传统区块链不同,DFINITY是异步消息处理机,容器间通过事务直接交互实现无限扩容。然而,这种设计牺牲了原子性,带来新的编程挑战。开发者需要探索新的范式以确保复杂应用的安全性,如采用TCC、Saga或事务观察者模式来处理一致性问题。此外,针对容器数据扩容,DFINITY支持容器Fork进行自动扩容,并建议按一致性需求将数据分层次存放。
摘要由CSDN通过智能技术生成

  DFINITY基于区块链计算协议ICP运行,采用了分层结构,从底层到顶层依次为:数据中心、节点、子网、软件容器。

  DFINITY的蕞底层是托管专用硬件的独立数据中心,这些数据中心运行在全球各地,目前全球已经有53个数据中心,年底将超过500个。数据中心对硬件与网络状态的要求较高,硬件也具备特殊要求,需要大量RAM而无需硬盘。数据中心想要进入DFINITY网络,需要获得去中心化治理系统NNS的头票许可,而这种头票往往发生在需要扩容时。

  数据中心的机器运行DFINITY节点程序,这个程序会根据性能虚拟化出一系列计算资源标准化的节点,这些节点会组成DFINITY的区块链,处理计算、达成共识、出块并同区块。

  这些节点随机地(跨多个数据中心)被NNS结合到一起,形成一个个子网。子网数量也不是固定的,而是随着网络的资源使用情况动态地增加、合并。这个子网类似于ETH2.0中的分片,或者是平行链,一个节点组只能组成一个子网,每一个子网内部都运行着自己的共识。子网的出块速度为一秒一个区块,且不同的子网同步并行出块。

  而在不同的子网上承载着「容器」,容器中运行着业务逻辑。可以把容器看作智能合约的升级版本,容器也具备内存,目前上限为4G,可以存储业务相关数据,也可以存放前端资源。

  与从传统区块链的架构差别

  ETH是一台同步的状态更新机器,由交易触发智能合约,对状态进行共识;而DFINITY是一台异步的消息处理机,容器同时进行消息的接收、计算、返回,对消息的处理顺序共识。容器间不会共享状态,只会通过通讯来处理事务。

  ETH 2.0、波卡、Layer2其实都属于分层架构&

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值