最大数字货币交易所Web3.0架构不仅是去中心化的,更是模块化的
一、Web 2.0 架构
Web2.0应用以去中心交易所 Binance 为例,Binance 允许用户去交易各种代币。
Binance是一个 Web 2.0 应用程序,架构听起来很简单,但实际上在开发中,需要进行大量的工作。
用户需要通过网络运营商来使设备联网,然后打开浏览器,输入币安的域名,通过 http 协议去访问币安的网站。
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 是去中心交易所,允许自由添加并交易各种代币。
Uniswap是一个 Web 3.0 应用程序,架构听起来很复杂,但实际开发实现很简单。
首先,用户要通过设备来进行联网,需要通过网络服务商,类似电信,移动之类。(去中心化的网络服务商,物联网:Helium)
然后,用户访问程序要通过浏览器或者操作系统(去中心化的浏览器或操作系统:Brave)
用户访问程序要通过浏览器与服务端交互,这一操作需要通过协议来支持(传统是 http,新的可由IPFS来替代,通过内容寻址)
Uniswap需要用户通过私钥,钱包去登录(类似插件,钱包等:Metamask、Tokenpocket、Math、Brave钱包),此外统一的 DID 也是未来的一个方向(类似 ENS 等)
钱包需要连接区块链的节点,这时会需要节点的服务器来提供,这也就需要对应区块链的节点,或者由Infura/Alchemy这种专业的节点服务提供商来进行。(去中心化的节点服务提供商也是一个趋势:Pocket)
Uniswap 网站是什么样子的,当用户与页面上的每个按键交互时会发生什么?还是JavaScript,HTML 和 CSS 之类的前端代码语言实现 Uniswap 的 UI 逻辑。