编者按:本文来自DfinityFun,Odaily星球日报经授权转载。
整理:Blockpunk社区:果壳宇宙互联网计算机是DFINITY的网络名称,DFINITY试图通过一个建立在IP协议上层的开放协议,去中心化地调度所有运行协议的计算机的资源,利用区块链、密码学等技术,在最上层虚拟化出一个安全可信,但无需传统组件的软件运行环境。在之前我曾经写过一篇DFINITY的技术架构分析:《并行处理、动态扩容、灵活治理,这些能成为DFINITY的后发优势吗?》,这里是DFINITY官方对互联网计算机这个开发平台的基础设施的介绍,以及DFINITY创新的下一代智能合约——“软件容器”,是如何允许去中心化的互联网服务扩展到数十亿用户的规模。网络神经元系统
互联网计算机是基于称为互联网计算机协议的区块链计算协议。网络本身是根据分层结构设计的。底层是托管专用硬件节点的独立数据中心。这些节点机器组合在一起以创建子网。子网主运行着软件容器,它们是可互操作的基础计算单元,由用户上传,容器中包含了代码和状态。
ICP的独特之处在于它的网络神经元系统,它负责控制、配置和管理网络。数据中心通过向NNS申请加入网络。NNS本身是一个开放的治理系统,它监督着网络的准入条件。从某种意义上说,它的职责与互联网上的ICANN很像。NNS承担着广泛的网络管理员的角色,包括监控节点计算机以查找互联网计算机网络上的统计偏差,从而辨识系统的性能需求并检查处理错误。NNS在代币经济学中也起着关键作用。NNS生成新的ICP代币以奖励节点,节点分为两类,一种是数据中心运行的专用硬件节点,一种是在NNS中抵押ICP创建的投票神经元节点,神经元节点治理着网络中的提案。当NNS发行新的ICP代币来奖励数据中心和神经元时,这是通货膨胀的部分。
MATIC跌破0.77美元:金色财经报道,行情显示,MATIC跌破0.77美元,现报0.76美元,日内跌幅达到2.56%,行情波动较大,请做好风险控制。[2023/6/10 21:27:29]
最终,数据中心所有者和神经元所有者可以获取ICP代币,并与容器所有者和管理者进行交易。容器所有者和管理者将这些代币转换为cycles,然后使用这些cycles来为其容器充电。例如,当这些容器执行计算或存储内存时,整个流程中需要消耗cycles,cycles消耗殆尽后,必须为它们补充更多的cycles才能继续运行,这是通货紧缩的部分。子网
要了解互联网计算机,你必须先了解子网的概念,子网是整个网络的基本组成部分。子网负责托管着互联网计算机网络的软件容器的不同子集。在NNS控制下,将从不同数据中心提取的节点机器聚集在一起来创建子网。这些节点通过ICP协作,以对称地复制与它们所托管的软件容器有关的数据和计算。
NNS在构建子网时会合并来自独立数据中心的节点。通过使用DFINITY开发的拜占庭容错技术和密码学技术,ICP协议可以确保子网防篡改且永不宕机。尽管子网是整个互联网计算机网络的基本组成部分,但它们对用户和软件是无感的。用户和容器软件仅需要知道容器的身份即可调用其共享的函数。这种无感性是互联网基本设计原则的延伸。在互联网上,如果用户要连接到某些软件,需要知道运行该软件的计算机的IP地址和该软件正在侦听的TCP端口。在互联网计算机上,如果用户希望调用函数,则只需要知道容器的身份和函数签名即可。与互联网创建无缝连接的方式相同,DFINITY也为软件创建了一个无缝的世界,其中任何获得许可的软件都可以直接调用任何其他软件,而无需了解网络的基础运行情况。互联网计算机还以其他方式确保子网的无感性。NNS可以拆分和合并子网,以平衡整个网络的负载。当然,这对于托管容器也是不受影响的。
超过100,000个地址正在帮助以太坊扩展:金色财经报道,为了扩展以太坊,研究人员提出了一项计划,使存储来自第2层汇总的数据成本更低。第一阶段需要将EIP-4844(称为proto-danksharding)引入以太坊主网,预计将在年底前与Dencun升级一起发生。但要做到这一点,他们需要一些熵,随机数据。EIP-4844将引入一种新的“blob-carrying交易”,种用于第2层将数据传递给以太坊主网验证器的临时数据存储机制。以太坊研究人员设计了一种方法,让任何拥有以太坊地址的人都可以参与,只要有使用该网络的一些历史就可以加入。4月17日向公众开放时,捐款仅限于具有大量交易历史记录的以太坊用户,以减少等待时间。但这些限制逐渐减少,以至于今天你只能贡献16笔交易。降低的门槛是总贡献数量不断上升的原因之一,最近超过了100,000个独立贡献。这并不一定意味着100,000个人,一个人可以拥有多个地址,但每个地址只允许一个贡献,并且每个人都为以太坊以汇总为中心的未来贡献一小部分安全措施。[2023/5/31 11:49:23]
在此示例中,我们有一个虚拟的子网ABC,该子网承载了11个软件容器。NNS表示需要拆分网络扩展性能,这时子网ABC将继续托管容器1–6,但同时生成一个新的子网XYZ来托管容器7–11。在扩展中,涉及的所有容器都不会遇到服务中断的情况。在将容器上传到互联网计算机时,必须指定特定的子网类型。实际上,有一个专门为NNS服务的特殊子网,你无法将容器上传到该子网。相反,你必须指定子网类型,例如“data(数据)”,“system(系统)”或“fiduciary(受信任)”。
数字资产托管平台Fireblocks宣布裁员5%:金色财经报道,据一份报告称,数字资产托管平台Fireblocks正在裁员5%。一年前,Fireblocks 以 80 亿美元的估值筹集了 5.5 亿美元的 E 轮融资。[2023/2/23 12:25:15]
每种子网类型都会为你的容器提供某些属性和功能。例如,如果你的容器托管在数据子网中,则它可以处理调用,但不能调用其他容器。要调用其他容器,你需要一个系统子网。如果希望你的容器能够保持ICP代币的余额或将cycles发送到其他容器,则需要一个受信任的子网。由于这些原因,治理容器只能托管在受信任的子网中。
子网的功能部分源自底层的容错能力。这是基础科学领域中令人兴奋的领域,我们希望很快与公众分享,其中包括允许NNS修复损坏的子网的新的加密技术。容器
子网的目的是托管容器。容器在专用的管理程序中运行,并通过公共指定的API与其他的容器交互。容器包含了可在WebAssembly虚拟机上运行的WebAssembly字节码及其中运行的内存数据页。通常,可以通过编译诸如Rust或Motoko之类的编程语言来创建该WebAssembly字节码。该字节码将包含一个运行时,使开发人员可以轻松地与API进行交互。
CME:美联储11月加息75个基点的概率为97.2%:10月25日消息,据CME“美联储观察”:美联储11月加息50个基点至3.50%-3.75%区间的概率为2.8%,加息75个基点的概率为97.2%,加息100个基点的概率为0%。
到12月累计加息100个基点的概率为1.3%,累计加息125个基点的概率为47.4%,累计加息150个基点的概率为51.3%。[2022/10/25 16:38:00]
在互联网计算机上,调用容器共享的函数有两种方式:更新调用或查询调用。本质区别在于,当你将函数作为更新调用进行调用时,其对容器内存中的数据所做的任何更改都将保留,而如果将函数作为查询调用进行调用时,则其对内存的任何更改在运行后都将被丢弃。更新调用的更改是持久化的,并且它们是防篡改的,因为ICP区块链计算机协议在子网的每个节点上都运行它们。如你所预期的,这些调用在一致的全局调用顺序中,允许在完全确定的执行环境中并发执行。更新调用在两秒内就可完成。
在此示例中,用户向容器内托管的交易所应用提交购买订单。相反,查询调用不会保留更改。它们对内存所做的任何更改在运行后都会被丢弃。它们非常高效且便宜,并且仅需几毫秒即可完成。这是因为它们未在子网中的所有节点上运行,也意味着它们提供了较低的安全级别。
在此示例中,用户正在请求自定义的新闻页面,立即就能获得新生成的内容。自动存储,正交持久性
“无聊猿”BAYC交易总额突破23亿美元:金色财经报道,据cryptoslam最新数据显示,“无聊猿”Bored Ape Yacht Club(BAYC)交易额总已突破 23 亿美元,本文撰写时为 2,300,160,236 美元,交易总量为 31,444 笔,市值约为 16.2 亿美元。另据 OpenSea 数据显示,当前“无聊猿”BYAC地板价为 84.5 ETH。[2022/7/3 1:46:57]
开发人员保留数据的方式时互联网计算机最酷的功能情之一。开发人员不必考虑持久性问题,他们只需编写代码,持久性就会自动发生。这称为正交持久性。这是因为互联网计算机会保留容器中的内存数据页。你可能想知道这一切如何工作。对于可以使内存数据页发生变化的更新调用来说,容器是软件执行者。这意味着在任何给定时间,容器内只能有一个执行线程。
尽管容器内只有一个执行线程,但默认情况下可以交错进行跨容器更新调用。当更新调用进行跨容器更新调用时会发生这种情况,该调用会阻塞,从而允许将执行线程移至新的更新调用。
相比之下,查询调用不会对内存进行永久更改。这样一来,在任何给定时间,容器内可以有任意数量的并发线程来处理查询调用。这些查询调用针对最后确定的状态根中记录的内存快照运行。最后,容器可以创建新的容器以及容器可以也fork自身。你只需指定WebAssembly字节码即可创建一个新的容器,并且内存数据页开始为空。当容器fork时,将创建一个新生成的副本,该副本与内部的内存页面相同。创建可扩展的互联网服务时,fork功能非常强大。可扩展性
现在来谈谈互联网计算机服务的可扩展性。不同类型的容器都有各自的容量上限。例如,由于WebAssembly实现的限制,一个容器只能存储4GB的内存。因此,当我们要创建可扩展到数十亿用户的互联网服务时,我们必须使用多容器架构。
我们可能希望创建一个特殊的容器来创建容器的许多副本,然后将用户内容分片到不同的容器以创建可扩展的互联网服务。但是,由于很多种原因,这个架构过来简单了。的确,每个额外的容器都会增加整体内存容量,以及增加容器数量都会增加整体更新和查询调用的吞吐量,但是我们无法扩展针对特定用户内容的查询调用请求。每当我们通过添加更多的容器分片来增加系统容量时,我们都需要重新负载均衡用户内容,这并不是真正的边缘可扩展架构。也没有好用的方法,在查询时把数据从最接近的副本中提供给终端用户。我们需要一个两层架构,前端容器和后端容器。
互联网计算机提供了一些有趣的功能,可以将终端用户锚定到前端容器,比如允许通过NNS将域名映射到多个前端容器上。当终端用户希望解析这样的域名时,互联网计算机将查看托管前端容器的所有子网中所有副本节点的总数,并返回最接近的副本节点的IP地址。这导致终端用户会在距离最近的副本上执行查询调用,从而减少了固有的网络延迟并改善了用户体验,在没有内容分发网络的情况下提供了边缘计算的优势。为了充分利用这个功能,我们需要一个涉及前端容器和后端数据桶容器的经典两层结构。在此示例中,Web浏览器希望加载个人资料图片。Step1,Web浏览器将映射到一个前端容器,它运行在具有附近节点的子网。然后,Web浏览器将提交查询调用请求到附近的节点以检索照片。Step2,前端容器将向保存照片的数据容器发出跨容器查询调用请求。Step3,如果数据存储容器返回的查询调用响应涉及静态内容(例如照片),则可以将数据存储在缓存中。在此案例中,运行前端容器查询调用的副本节点,可以将查询调用的响应存储到其查询缓存中。
Step4,查询调用缓存机制对于前端容器代码是完全无感的。一旦用户调用的前端容器收集了所有必要的信息,它就可以通过查询调用响应或HTTP请求返回内容。
随着时间的流逝,节点的查询缓存会累积静态内容并生成附近用户感兴趣的数据,从而为他们提供更快,更好的用户体验。这样,互联网计算机的原生边缘体系结构提供了内容分发网络的优势,而无需开发人员做任何特殊的事情,也无需争取单独的专有服务的帮助。
对于更新调用,经典两层结构采用了不同的方法。必须序列化对用户内容和数据的更新,以防止诸如更新丢失之类的问题。通常,会通过计算用户hash值,将用户映射到特定的前端容器来实现的。
一旦在Web浏览器或智能手机上运行的UX/UI确定了哪个前端容器负责协调对某些内容或数据的更改,便可以通过标准接口提交更新调用来修改内容或数据。
然后,此前端容器通常会进行更多的跨容器更新调用,以实现所需的更改。开放式互联网服务
总结一下,让我们讨论一下设计使用前端容器和后端数据容器的两层体系结构的开放互联网服务。首先,当你编写前端容器代码时,将通过使用称为BigMap的现有库类来简化工作。
BigMap可以存储EB级数据,仅使用一行代码就可以完成对象的写入。通过让前端容器和数据桶容器复制,在两个容器之间分担责任,让体系结构可以透明,动态地横向扩展。最后,要创建真正的开放互联网服务,你需要将所有容器的责任分配给一个开放的代币化治理容器。如果你是企业家,则可以通过在早期出售一些治理代币来筹集发展资金。你可能会设计一些方案,通过给他们治理代币提供激励来激发互联网服务的早期参与者,从而获得更好的网络效果,并赢得竞争。
垄断的生意才是最好的,但在Web3世界很难产生垄断,不过我们发现中间件业务是个例外。Chainlink是中间件的代表,TheGraph也是高度垄断的中间件业务,为了便于理解,我把TheGraph.
1900/1/1 0:00:00编者按:本文来自IPFS原力区,作者:Tony,星球日报经授权发布。1月22日,据美国特拉华州公司备案网站上显示,灰度已经组建了新的信托公司,除了最早被披露的灰度FIL信托外,还有5个币种,分别.
1900/1/1 0:00:00写在开始:本文不就Polkadot波卡的技术构想进行详细说明,而是从Polkadot波卡的投资角度进行深入探讨.
1900/1/1 0:00:00编者按:本文来自巴比特资讯,作者:StarkWare,编译:Kyle,星球日报经授权发布。零知识证明研发机构StarkWare表示,其二层扩容解决方案ZKRollup“StarkNet”目前已经.
1900/1/1 0:00:00编者按:本文来自区块律动BlockBeats,Odaily星球日报经授权转载。1月20日,加密分析机构Messari发布了一份亚洲的加密生态报告,内容显示占据世界人口60%的亚洲同样在加密市场里.
1900/1/1 0:00:00导读国际货币基金组织在2020年9月22日完成撰写了《跨境支付的数字货币:宏观金融的影响》一文,重点论述了跨境支付的数字货币的四种应用情景,以及对这些场景的具体分析.
1900/1/1 0:00:00