原文标题:《 Web 3.0 架构不仅是去中心化的,更是模块化的 》 原文作者:Xiang,W3.Hitchhiker 一、Web 2.0 架构 Web2.0 应用以去中心交易平台 Binance 为例,Binance 允许用户去交易各种Token。 Binance 是一个 Web 2.0 应用程序,架构听起来很简单,但实际上在开发中,需要进行大量的工作。 用户需要通过网络运营商来使设备联网,然后打开浏览器,输入 Binance 的域名,通过 http 协议去访问 Binance 的网站。 Binance 需要用户通过手机或者邮箱来进行注册并登录该平台。 然后 Binance 自己需要一个地方来存储像用户注册信息,交易额度,成交历史,挂单等的基础数据。而这些都需要搭建一个数据库用来存储,并且要不断地更新。 其次,后端代码语言(像 Node.js, Java, or Go)决定了 Binance 的所有的业务逻辑。需要一个搭建服务器部署后端跑后端的逻辑。例如,当新用户注册、交易,挂单会发生什么情况? 还有,像前端代码语言 (JavaScript, HTML, and CSS ) 决定了 Binance 的 UI 逻辑。需要一个搭建服务器部署到前端跑前端的交互逻辑。例如,网站是什么样子的?当用户与页面上的每个按键交互时会发生什么? 当你在 Binance 上写交易时,这些所有的东西都会整合起来进行联动。你与它的前端互动,前端和后端交互,后端再与它的数据库交互。所有这些代码都托管在中心化服务器上,并通过互联网浏览器反馈给用户,而中心化服务器的所有控制权在 Binance 的手上。 这是对当今大多数 Web 2.0 应用程序的工作原理的一个简单总结,当然实际会更为复杂。 二、Web 3.0 架构 Web 3.0 应用以 Uniswap 为例,Uniswap 是去中心交易平台,允许自由添加并交易各种 Token 。 Uniswap 是一个 Web 3.0 应用程序,架构听起来很复杂,但实际开发实现很简单。 首先,用户要通过设备来进行联网,需要通过网络服务商,类似电信,移动之类。(去中心化的网络服务商,物联网:Helium) 然后,用户访问程序要通过浏览器或者操作系统(去中心化的浏览器或操作系统:Brave) 用户访问程序要通过浏览器与服务端交互,这一操作需要通过协议来支持(传统是 http,新的可由IPFS来替代,通过内容寻址) Uniswap 需要用户通过私钥,钱包去登录(类似插件,钱包等:Metamask、Tokenpocket、Math、Brave 钱包),此外统一的 DID 也是未来的一个方向(类似 ENS 等) 钱包需要连接区块链的节点,这时会需要节点的服务器来提供,这也就需要对应区块链的节点,或者由Infura/Alchemy这种专业的节点服务提供商来进行。(去中心化的节点服务提供商也是一个趋势:Pocket) Uniswap 网站是什么样子的,当用户与页面上的每个按键交互时会发生什么?还是 JavaScript,HTML 和 CSS 之类的前端代码语言实现 Uniswap 的 UI 逻辑。 但 Web3 可以不需要自己搭建服务器部署跑前端的交互逻辑。这些前端的数据可以保存在去中心化的存储网络中。(如Filcoin、SWARM、AR等) 以下是 Uniswap 的官方的 IPFS 链接,此方案不需要搭建前端服务器,用户同样可以正常使用。 ipfs://bafybeiagkgmmhux6fswdoedmwqqsvt5arjivl35wuk25jljb2yqgn7njgu/#/swap 以上的链接,可以看到是由 ipfs:// 开头的,所以需要支持解析 ipfs 的浏览器才能打开(Brave、Opera) 并且该链接不是人类可读的,所以又需要域名服务,把对应的域名映射到该链接,例如 uniswap.eth。(去中心化的域名服务:IPNS、ENS 等) 当然 IPFS 也只支持兼容 Http 的网关去访问。 当网站访问量高的时候,需要更加灵活的带宽市场——CDN 加速网络。(CDN 服务、IPFS、Filecoin 检索市场) Uniswap 通过区块链智能合约语言 solidity 等实现,决定了 Uniswap 的所有的业务逻辑。因为是跑在 EVM 环境内,所以 Uni 不需要自己搭建服务器部署后端跑业务逻辑(支持智能合约的区块链、ETH 等)。 但交易平台需要展示的,肯定不只是业务逻辑,也需要展示币价的历史价格曲线,交易额度等。这些历史数据并不能通过智能合约获取。假设项目方需要展示的话,仍然需要自己搭建服务器,跑一个节点,通过链上的数据,筛选出来保存到 Uni 自己的数据库。所以 Web3 需要一个链数据索引的解决方案。(链数据索引平台 Graph) The Graph 就提供了一个链数据索引方案,可以方便用户查询数据。在 The Graph 中,你可以定义哪些智能合约需要索引、哪些事件与函数调用需要监听,包括调用时、产生时的状态,也可以规定如何将传入的事件转化为前端逻辑可处理的。 链上数据的保存会由专门的 Graph 索引挖矿节点保存,该索引节点将提供 API 供用户页面端调用,项目方不需要搭建服务器,只有索引节点需要搭建服务器来跑索引数据挖矿节点。 通过索引区块链数据,The Graph 可以让我们在应用逻辑中查询链上数据,并且几乎不会出现延迟的情况。 例如 Uniswap 交易信息的呈现就是通过 The Graph 生成的。 如果 Uniswap 想呈现的更多,把链下的币价数据也在链上呈现出来,这时就需要打通链下链上数据的桥梁(去中心化的预言机:chainlink)。 按照以上的开发逻辑,Uniswap 相当于发布了一个 Web 3.0 的应用,但实际实现的成本比开发 Binance 交易平台的成本低非常多,因为: Uniswap 不需要用户绑定邮箱,绑定手机,可以直接通过钱包登录,Uni 自身也不需要保存 Uniswap 可以不需要搭建前端服务器,用户可通过 IPFS 或 AR 存储前端页面进行访问不需要搭建后端服务器。后端逻辑是跑在智能合约上不需要搭建数据库,历史数据与数据库操作通过 TheGraph 来实现 专业的人去做专业的事,Uniswap 只需做好、设计好自己的逻辑,其他逻辑由模块化 Web3 基础设施去支撑。 这样 Uniswap 不仅仅实现了完全的去中心化,也是 Web3 模块化的一个简单的应用案例。 Web3 的核心是能去信任化交互价值,模块化的发展不仅能做到去信任化,还能提高运行的效率,模块化的趋势会应用到各行各业。 前文所说的是 Web3 网络架构的模块化,提高了 Web3 的生成力效率,那怎么提高 Web3 生产关系的效率(Web2 的生产关系主要以公司为主,Web3 的生成关系就是 DAO,DAO 的模块化也是未来的趋势)。DAO 又依赖于区块链,区块链本身也正在走向模块化,同理元宇宙,游戏等等都是如此。 模块化时代到来将带来更高的效率,更好的服务,W3Hitchhiker 将持续跟进 crypto 的模块化之路。 原文链接 —- 编译者/作者:区块律动BlockBeat 玩币族申明:玩币族作为开放的资讯翻译/分享平台,所提供的所有资讯仅代表作者个人观点,与玩币族平台立场无关,且不构成任何投资理财建议。文章版权归原作者所有。 |
Web3.0架构:模块化将成为未来趋势
2022-04-25 区块律动BlockBeat 来源:区块链网络
LOADING...
相关阅读:
- 中国李宁×BoredApe你#无聊不无聊#2022-04-25
- Web3.0架构不仅是去中心化的更是模块化的2022-04-25
- 在Decentraland体验虚拟世界的平行人生2022-04-24
- 当下的风口:今年至少15家风投机构推出Web3.0基金规模超40亿美元2022-04-24
- 用数据解析Near生态$REF如何从中受益?2022-04-24