最近看了一些Web3.0的文章,总结了一些个人的理解:

Web3.0 通过区块链基础设施管理用户数据,重构用户和互联网平台之间的关系和交互,重新定义了互联网应用的架构方式和交互模式。

Web 1.0 中,以浏览性的网站(只能看)为代表,如Baidu、搜狐、163等。

Web 2.0 中,以可读+可写的网站为代表,用户之间可以互动,但互联网平台仍然控制着用户数据和信息,如 微信、QQ、钉钉、B站、小红书、抖音等。

Web 3.0中、可读+可写+拥有。用户和互联网平台是独立存在的,可以拒绝填写身份信息,不需要同意任何隐私协议。用户可以通过数字密钥或钱包登录任何平台。

一、Web2 基础架构

前端代码中主要定义前端交互逻辑

后端代码主要处理请求的业务逻辑

数据库用于存储所有数据

当然还会有MQ、Redis等中间件

交互模式如下:

客户端->服务端->数据库->服务端->客户端

二、Web3 基础架构
  • 前端保持与 Web2 应用程序相同

  • 只改变后端处理和交互模式

  • 前端与底层区块链网络交互

  • 交互层发起事务并写入数据,在区块链上索引并读取数据

  • 基于协议构建 dApp

  • 区块链协议和智能合约取代特定业务逻辑的后端代码

  • 前端代码直接与区块链网络交互

  • 智能合约 = 定义业务逻辑

  • 以太坊虚拟机 = 在不同操作环境下,按照相同的业务逻辑进行数据计算和处理

  • 区块链 = 数据被打包成块,永久存储在链上

  • 前端->智能合约->EVM->区块链->前端

  • 节点是应用程序和区块链网络之间的关键

  • 两种主流实现方式:

  • 自己构建和运行节点

  • 使用第三方提供的节点服务

  • 在 Web2 中,身份信息存储在平台上

  • 在 Web3 中,身份信息基于公钥和私钥。钱包(Metamask)被用作访问任何 web3 应用程序的接口。

  • 星际文件系统(IPFS, Interplanetary File System) - 一种网络传输协议,旨在创建持久和分布式存储以及共享文件,也是一个点对点超媒体分发协议。

  • Swarm 是一种去中心化的存储、服务和通信协议,为 dApp 的部署提供无许可、抗审查的基础设施。

  • 由于数据被打包在每个块中并链接在一起,因此是一个链表结构。解码需要处理链上的加密数据。API 用于查询和索引数据。

  • 除此之外,web 服务用于提供一些特效以及其他业务逻辑并返回给前端。

Web3.0对于我们开发者来说和一个很好机会,这也代表了未来5~10年互联网应用发展的趋势。

文章引用链接:https://xie.infoq.cn/article/d02da57ef0c2dac35f27927d1

一问读懂Web3 架构的更多相关文章

  1. 让你分分钟读懂CPU架构及芯片厂商

    CPU架构是CPU厂商给属于同一系列的CPU产品定的一个规范,主要目的是为了区分 不同类型CPU的重要标示.目前市面上的CPU指令集分类主要分有两大阵营,一个是intel.AMD为首的复杂指令集CPU ...

  2. [转]一图读懂JVM架构解析

    每个Java开发人员都知道字节码经由JRE(Java运行时环境)执行.但他们或许不知道JRE其实是由Java虚拟机(JVM)实现,JVM分析字节码,解释并执行它.作为开发人员,了解JVM的架构是非常重 ...

  3. 一文读懂RESTful架构

    转载自https://zhuanlan.zhihu.com/p/381554129 RESTful架构究竟是什么 别着急,想要了解RESTful,我们先来了解一位大佬Roy Thomas Fieldi ...

  4. 即时通讯新手入门:一文读懂什么是Nginx?它能否实现IM的负载均衡?

    本文引用了“蔷薇Nina”的“Nginx 相关介绍(Nginx是什么?能干嘛?)”一文部分内容,感谢作者的无私分享. 1.引言   Nginx(及其衍生产品)是目前被大量使用的服务端反向代理和负载均衡 ...

  5. 一篇文章,读懂Netty的高性能架构之道

    一篇文章,读懂Netty的高性能架构之道 Netty是由JBOSS提供的一个java开源框架,是一个高性能.异步事件驱动的NIO框架,它提供了对TCP.UDP和文件传输的支持,作为一个异步NIO框架, ...

  6. 【Zigbee技术入门教程-02】一图读懂ZStack协议栈的基本架构和工作机理

    [Zigbee技术入门教程-02]一图读懂ZStack协议栈的基本架构和工作机理 广东职业技术学院  欧浩源  ohy3686@foxmail.com Z-Stack协议栈是一个基于任务轮询方式的操作 ...

  7. 一片非常有趣的文章 三分钟读懂TT猫分布式、微服务和集群之路

    原文http://www.cnblogs.com/smallSevens/p/7501932.html#3782600 三分钟读懂TT猫分布式.微服务和集群之路   针对新手入门的普及,有过大型网站技 ...

  8. 【一起来烧脑】读懂HTTP知识体系

    背景 读懂HTTP很重要,参加过面试的小伙伴都很清楚,无论是技术面试面试题出得怎样,都有机会让你讲解一下HTTP,大部分都会问一下. 面试官:考考你网络协议的知识,TCP协议和UDP协议的区别,HTT ...

  9. 如何读懂Framework源码?如何从应用深入到Framework?

    如何读懂Framework源码? 首先,我也是一个应用层开发者,我想大部分有"如何读懂Framework源码?"这个疑问的,应该大都是应用层开发. 那对于我们来讲,读源码最大的问题 ...

  10. 如何快速读懂大型C++程序代码

    要搞清楚别人的代码,首先,你要了解代码涉及的领域知识,这是最重要的,不懂领域知识,只看代码本身,不可能搞的明白.其次,你得找各种文档:需求文档(要做什么),设计文档(怎么做的),先搞清楚你即将要阅读是 ...

随机推荐

  1. JVM运行模式和逃逸分析

    JVM三种运行模式: 解释模式(Interpreted Mode):只使用解释器(-Xint强制JVM使用解释模式),执行一行JVM字节码就编译一行为机器码.(可以马上看到效果,但是运行过程比较慢) ...

  2. DevOps|高效能敏捷交付组织:特性团队(FeatureTeam)+Scrum

    这是<研发效能组织能力建设>的第三篇.特性团队和Scrum,这两个定义我们在之前的文章中都详细介绍了.这两个组织模式或者说管理实践,我都用过所以有些时候特别有感触.书本上纯粹的模式很容易理 ...

  3. NLP之基于Seq2Seq和注意力机制的句子翻译

    Seq2Seq(Attention) @ 目录 Seq2Seq(Attention) 1.理论 1.1 机器翻译 1.1.1 模型输出结果处理 1.1.2 BLEU得分 1.2 注意力模型 1.2.1 ...

  4. Pycharm和IDEA利用Git操作Github仓库

    1. Git Bash 选择一个本地代码仓库文件夹:D:/Github_Code/新建文件夹,然后在此目录打开git bash 依次进行: git init //首次需执行,之后可不用 git add ...

  5. iptables规则查询

    iptables规则查询 之前在iptables的概念中已经提到过,在实际操作iptables的过程中,是以"表"作为操作入口的,如果你经常操作关系型数据库,那么当你听到" ...

  6. JAVA学习前准备

    电脑常用快捷键 Ctrl+C:复制 Ctrl+V:粘贴 Ctrl+A:全选 Ctrl+X:剪切 Ctrl+Z:撤销 Ctrl+S:保存 Alt+F4:关闭窗口 Shift+delete:永久性删除文件 ...

  7. Python基础之函数:4、二分法、三元表达式、生成/推导式、匿名函数、内置函数

    目录 一.算法简介之二分法 1.什么是算法 2.算法的应用场景 3.二分法 二.三元表达式 1.简介及用法 三.各种生成式 1.列表生成式 2.字典生成式 3.集合生成式 四.匿名函数 五.常见内置函 ...

  8. VideoPipe可视化视频结构化框架新增功能详解(2022-11-4)

    VideoPipe从国庆节上线源代码到现在经历过了一个月时间,期间吸引了若干小伙伴的参与,现将本阶段新增内容总结如下,有兴趣的朋友可以加微信拉群交流. 项目地址:https://github.com/ ...

  9. "xxx cannot be cast to jakarta.servlet.Servlet "报错解决方式

    在做jsp的上机时候同学出现了一个500错误:com.kailong.servlet.ComputeBill cannot be cast to jaka.servlet.Servlet 然后因为我用 ...

  10. mysql 子查询 联结 组合查询

    子查询 SELECT cust_id FROM orders WHERE order_num IN (SELECT order_num FROM orderitems WHERE prod_id='T ...